package jetbrains.mps.lang.structure.structure;
/*Generated by MPS */
import java.util.List;
import jetbrains.mps.internal.collections.runtime.ListSequence;
import java.util.LinkedList;
public enum ChildrenIncomingReferencesPolicy {
allowed("allowed", null),
local("enforce `same root only'", "local"),
forbidden("enforce `forbidden'", "forbidden");
private final String myName;
public String getName() {
return myName;
}
private final String myValue;
private ChildrenIncomingReferencesPolicy(String name, String value) {
myName = name;
myValue = value;
}
public String getValue() {
return myValue;
}
public String getValueAsString() {
return myValue;
}
public static List<ChildrenIncomingReferencesPolicy> getConstants() {
List<ChildrenIncomingReferencesPolicy> list = ListSequence.fromList(new LinkedList<ChildrenIncomingReferencesPolicy>());
ListSequence.fromList(list).addElement(ChildrenIncomingReferencesPolicy.allowed);
ListSequence.fromList(list).addElement(ChildrenIncomingReferencesPolicy.local);
ListSequence.fromList(list).addElement(ChildrenIncomingReferencesPolicy.forbidden);
return list;
}
public static ChildrenIncomingReferencesPolicy getDefault() {
return ChildrenIncomingReferencesPolicy.allowed;
}
public static ChildrenIncomingReferencesPolicy parseValue(String value) {
if (value == null) {
return ChildrenIncomingReferencesPolicy.getDefault();
}
if (value.equals(ChildrenIncomingReferencesPolicy.allowed.getValueAsString())) {
return ChildrenIncomingReferencesPolicy.allowed;
}
if (value.equals(ChildrenIncomingReferencesPolicy.local.getValueAsString())) {
return ChildrenIncomingReferencesPolicy.local;
}
if (value.equals(ChildrenIncomingReferencesPolicy.forbidden.getValueAsString())) {
return ChildrenIncomingReferencesPolicy.forbidden;
}
return ChildrenIncomingReferencesPolicy.getDefault();
}
}