/**
* generated by Xtext 2.21.0
*/
package org.eclipse.viatra.solver.language.solverLanguage;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import org.eclipse.emf.common.util.Enumerator;
/**
*
* A representation of the literals of the enumeration 'Metric Type',
* and utility methods for working with them.
*
* @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getMetricType()
* @model
* @generated
*/
public enum MetricType implements Enumerator
{
/**
* The 'INT' literal object.
*
*
* @see #INT_VALUE
* @generated
* @ordered
*/
INT(0, "INT", "int"),
/**
* The 'REAL' literal object.
*
*
* @see #REAL_VALUE
* @generated
* @ordered
*/
REAL(1, "REAL", "real");
/**
* The 'INT' literal value.
*
*
* @see #INT
* @model literal="int"
* @generated
* @ordered
*/
public static final int INT_VALUE = 0;
/**
* The 'REAL' literal value.
*
*
* @see #REAL
* @model literal="real"
* @generated
* @ordered
*/
public static final int REAL_VALUE = 1;
/**
* An array of all the 'Metric Type' enumerators.
*
*
* @generated
*/
private static final MetricType[] VALUES_ARRAY =
new MetricType[]
{
INT,
REAL,
};
/**
* A public read-only list of all the 'Metric Type' enumerators.
*
*
* @generated
*/
public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
/**
* Returns the 'Metric Type' literal with the specified literal value.
*
*
* @param literal the literal.
* @return the matching enumerator or null
.
* @generated
*/
public static MetricType get(String literal)
{
for (int i = 0; i < VALUES_ARRAY.length; ++i)
{
MetricType result = VALUES_ARRAY[i];
if (result.toString().equals(literal))
{
return result;
}
}
return null;
}
/**
* Returns the 'Metric Type' literal with the specified name.
*
*
* @param name the name.
* @return the matching enumerator or null
.
* @generated
*/
public static MetricType getByName(String name)
{
for (int i = 0; i < VALUES_ARRAY.length; ++i)
{
MetricType result = VALUES_ARRAY[i];
if (result.getName().equals(name))
{
return result;
}
}
return null;
}
/**
* Returns the 'Metric Type' literal with the specified integer value.
*
*
* @param value the integer value.
* @return the matching enumerator or null
.
* @generated
*/
public static MetricType get(int value)
{
switch (value)
{
case INT_VALUE: return INT;
case REAL_VALUE: return REAL;
}
return null;
}
/**
*
*
* @generated
*/
private final int value;
/**
*
*
* @generated
*/
private final String name;
/**
*
*
* @generated
*/
private final String literal;
/**
* Only this class can construct instances.
*
*
* @generated
*/
private MetricType(int value, String name, String literal)
{
this.value = value;
this.name = name;
this.literal = literal;
}
/**
*
*
* @generated
*/
@Override
public int getValue()
{
return value;
}
/**
*
*
* @generated
*/
@Override
public String getName()
{
return name;
}
/**
*
*
* @generated
*/
@Override
public String getLiteral()
{
return literal;
}
/**
* Returns the literal value of the enumerator, which is its string representation.
*
*
* @generated
*/
@Override
public String toString()
{
return literal;
}
} //MetricType