package jetbrains.mps.baseLanguage.math.structure;
/*Generated by MPS */
import java.util.List;
import jetbrains.mps.internal.collections.runtime.ListSequence;
import java.util.LinkedList;
public enum RoundingMode {
CEILING("CEILING", 0),
DOWN("DOWN", 1),
FLOOR("FLOOR", 2),
HALF_DOWN("HALF_DOWN", 3),
HALF_EVEN("HALF_EVEN", 4),
HALF_UP("HALF_UP", 5),
UNNECCESARY("UNNECCESARY", 6),
UP("UP", 7);
private final String myName;
public String getName() {
return myName;
}
private final int myValue;
RoundingMode(String name, int value) {
myName = name;
myValue = value;
}
public int getValue() {
return myValue;
}
public String getValueAsString() {
return Integer.toString(myValue);
}
public static List<RoundingMode> getConstants() {
List<RoundingMode> list = ListSequence.fromList(new LinkedList<RoundingMode>());
ListSequence.fromList(list).addElement(RoundingMode.CEILING);
ListSequence.fromList(list).addElement(RoundingMode.DOWN);
ListSequence.fromList(list).addElement(RoundingMode.FLOOR);
ListSequence.fromList(list).addElement(RoundingMode.HALF_DOWN);
ListSequence.fromList(list).addElement(RoundingMode.HALF_EVEN);
ListSequence.fromList(list).addElement(RoundingMode.HALF_UP);
ListSequence.fromList(list).addElement(RoundingMode.UNNECCESARY);
ListSequence.fromList(list).addElement(RoundingMode.UP);
return list;
}
public static RoundingMode getDefault() {
return RoundingMode.HALF_EVEN;
}
public static RoundingMode parseValue(String value) {
if (value == null) {
return RoundingMode.getDefault();
}
if (value.equals(RoundingMode.CEILING.getValueAsString())) {
return RoundingMode.CEILING;
}
if (value.equals(RoundingMode.DOWN.getValueAsString())) {
return RoundingMode.DOWN;
}
if (value.equals(RoundingMode.FLOOR.getValueAsString())) {
return RoundingMode.FLOOR;
}
if (value.equals(RoundingMode.HALF_DOWN.getValueAsString())) {
return RoundingMode.HALF_DOWN;
}
if (value.equals(RoundingMode.HALF_EVEN.getValueAsString())) {
return RoundingMode.HALF_EVEN;
}
if (value.equals(RoundingMode.HALF_UP.getValueAsString())) {
return RoundingMode.HALF_UP;
}
if (value.equals(RoundingMode.UNNECCESARY.getValueAsString())) {
return RoundingMode.UNNECCESARY;
}
if (value.equals(RoundingMode.UP.getValueAsString())) {
return RoundingMode.UP;
}
return RoundingMode.getDefault();
}
}