blob: 722b212356d374929fe90c6cc5f2aa43f16d42dc [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2011 Vrije Universiteit Brussel.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* Dennis Wagelaar, Vrije Universiteit Brussel - initial API and
* implementation and/or initial documentation
*******************************************************************************/
package org.eclipse.m2m.atl.emftvm;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import org.eclipse.emf.common.util.Enumerator;
/**
* <!-- begin-user-doc -->
* A representation of the literals of the enumeration '<em><b>Constant Tag</b></em>',
* and utility methods for working with them.
* @author <a href="mailto:dennis.wagelaar@vub.ac.be">Dennis Wagelaar</a>
* <!-- end-user-doc -->
* @see org.eclipse.m2m.atl.emftvm.EmftvmPackage#getConstantTag()
* @model
* @generated
*/
public enum ConstantTag implements Enumerator {
/**
* The '<em><b>String</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #STRING_VALUE
* @generated
* @ordered
*/
STRING(0, "String", "String"),
/**
* The '<em><b>Integer</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #INTEGER_VALUE
* @generated
* @ordered
*/
INTEGER(1, "Integer", "Integer"),
/**
* The '<em><b>Double</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #DOUBLE_VALUE
* @generated
* @ordered
*/
DOUBLE(2, "Double", "Double"),
/**
* The '<em><b>Byte</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #BYTE_VALUE
* @generated
* @ordered
*/
BYTE(3, "Byte", "Byte"),
/**
* The '<em><b>Character</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #CHARACTER_VALUE
* @generated
* @ordered
*/
CHARACTER(4, "Character", "Character"), /**
* The '<em><b>Float</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #FLOAT_VALUE
* @generated
* @ordered
*/
FLOAT(5, "Float", "Float"),
/**
* The '<em><b>Short</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #SHORT_VALUE
* @generated
* @ordered
*/
SHORT(6, "Short", "Short"),
/**
* The '<em><b>Long</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #LONG_VALUE
* @generated
* @ordered
*/
LONG(7, "Long", "Long"), /**
* The '<em><b>Enum Literal</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #ENUM_LITERAL_VALUE
* @generated
* @ordered
*/
ENUM_LITERAL(8, "EnumLiteral", "EnumLiteral"), /**
* The '<em><b>Null</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #NULL_VALUE
* @generated
* @ordered
*/
NULL(9, "Null", "Null");
/**
* The '<em><b>String</b></em>' literal value.
* <!-- begin-user-doc -->
* <p>
* If the meaning of '<em><b>String</b></em>' literal object isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @see #STRING
* @model name="String"
* @generated
* @ordered
*/
public static final int STRING_VALUE = 0;
/**
* The '<em><b>Integer</b></em>' literal value.
* <!-- begin-user-doc -->
* <p>
* If the meaning of '<em><b>Integer</b></em>' literal object isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @see #INTEGER
* @model name="Integer"
* @generated
* @ordered
*/
public static final int INTEGER_VALUE = 1;
/**
* The '<em><b>Double</b></em>' literal value.
* <!-- begin-user-doc -->
* <p>
* If the meaning of '<em><b>Double</b></em>' literal object isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @see #DOUBLE
* @model name="Double"
* @generated
* @ordered
*/
public static final int DOUBLE_VALUE = 2;
/**
* The '<em><b>Byte</b></em>' literal value.
* <!-- begin-user-doc -->
* <p>
* If the meaning of '<em><b>Byte</b></em>' literal object isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @see #BYTE
* @model name="Byte"
* @generated
* @ordered
*/
public static final int BYTE_VALUE = 3;
/**
* The '<em><b>Character</b></em>' literal value.
* <!-- begin-user-doc -->
* <p>
* If the meaning of '<em><b>Character</b></em>' literal object isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @see #CHARACTER
* @model name="Character"
* @generated
* @ordered
*/
public static final int CHARACTER_VALUE = 4;
/**
* The '<em><b>Float</b></em>' literal value.
* <!-- begin-user-doc -->
* <p>
* If the meaning of '<em><b>Float</b></em>' literal object isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @see #FLOAT
* @model name="Float"
* @generated
* @ordered
*/
public static final int FLOAT_VALUE = 5;
/**
* The '<em><b>Short</b></em>' literal value.
* <!-- begin-user-doc -->
* <p>
* If the meaning of '<em><b>Short</b></em>' literal object isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @see #SHORT
* @model name="Short"
* @generated
* @ordered
*/
public static final int SHORT_VALUE = 6;
/**
* The '<em><b>Long</b></em>' literal value.
* <!-- begin-user-doc -->
* <p>
* If the meaning of '<em><b>Long</b></em>' literal object isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @see #LONG
* @model name="Long"
* @generated
* @ordered
*/
public static final int LONG_VALUE = 7;
/**
* The '<em><b>Enum Literal</b></em>' literal value.
* <!-- begin-user-doc -->
* <p>
* If the meaning of '<em><b>Enum Literal</b></em>' literal object isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @see #ENUM_LITERAL
* @model name="EnumLiteral"
* @generated
* @ordered
*/
public static final int ENUM_LITERAL_VALUE = 8;
/**
* The '<em><b>Null</b></em>' literal value.
* <!-- begin-user-doc -->
* <p>
* If the meaning of '<em><b>Null</b></em>' literal object isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @see #NULL
* @model name="Null"
* @generated
* @ordered
*/
public static final int NULL_VALUE = 9;
/**
* An array of all the '<em><b>Constant Tag</b></em>' enumerators.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private static final ConstantTag[] VALUES_ARRAY =
new ConstantTag[] {
STRING,
INTEGER,
DOUBLE,
BYTE,
CHARACTER,
FLOAT,
SHORT,
LONG,
ENUM_LITERAL,
NULL,
};
/**
* A public read-only list of all the '<em><b>Constant Tag</b></em>' enumerators.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public static final List<ConstantTag> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
/**
* Returns the '<em><b>Constant Tag</b></em>' literal with the specified literal value.
* <!-- begin-user-doc -->
* @param literal the literal string value
* @return the '<em><b>Constant Tag</b></em>' literal with the specified literal value.
* <!-- end-user-doc -->
* @generated
*/
public static ConstantTag get(String literal) {
for (int i = 0; i < VALUES_ARRAY.length; ++i) {
ConstantTag result = VALUES_ARRAY[i];
if (result.toString().equals(literal)) {
return result;
}
}
return null;
}
/**
* Returns the '<em><b>Constant Tag</b></em>' literal with the specified name.
* <!-- begin-user-doc -->
* @param name the literal name
* @return the '<em><b>Constant Tag</b></em>' literal with the specified name.
* <!-- end-user-doc -->
* @generated
*/
public static ConstantTag getByName(String name) {
for (int i = 0; i < VALUES_ARRAY.length; ++i) {
ConstantTag result = VALUES_ARRAY[i];
if (result.getName().equals(name)) {
return result;
}
}
return null;
}
/**
* Returns the '<em><b>Constant Tag</b></em>' literal with the specified integer value.
* <!-- begin-user-doc -->
* @param value the literal integer value
* @return the '<em><b>Constant Tag</b></em>' literal with the specified integer value.
* <!-- end-user-doc -->
* @generated
*/
public static ConstantTag get(int value) {
switch (value) {
case STRING_VALUE: return STRING;
case INTEGER_VALUE: return INTEGER;
case DOUBLE_VALUE: return DOUBLE;
case BYTE_VALUE: return BYTE;
case CHARACTER_VALUE: return CHARACTER;
case FLOAT_VALUE: return FLOAT;
case SHORT_VALUE: return SHORT;
case LONG_VALUE: return LONG;
case ENUM_LITERAL_VALUE: return ENUM_LITERAL;
case NULL_VALUE: return NULL;
}
return null;
}
/**
* <!-- begin-user-doc -->
* The '<em><b>Constant Tag</b></em>' literal integer value.
* <!-- end-user-doc -->
* @generated
*/
private final int value;
/**
* <!-- begin-user-doc -->
* The '<em><b>Constant Tag</b></em>' literal name.
* <!-- end-user-doc -->
* @generated
*/
private final String name;
/**
* <!-- begin-user-doc -->
* The '<em><b>Constant Tag</b></em>' literal string value.
* <!-- end-user-doc -->
* @generated
*/
private final String literal;
/**
* Only this class can construct instances.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private ConstantTag(int value, String name, String literal) {
this.value = value;
this.name = name;
this.literal = literal;
}
/**
* <!-- begin-user-doc -->
* Returns the '<em><b>Constant Tag</b></em>' literal integer value.
* @return the '<em><b>Constant Tag</b></em>' literal integer value.
* <!-- end-user-doc -->
* @generated
*/
public int getValue() {
return value;
}
/**
* <!-- begin-user-doc -->
* Returns the '<em><b>Constant Tag</b></em>' literal name.
* @return the '<em><b>Constant Tag</b></em>' literal name.
* <!-- end-user-doc -->
* @generated
*/
public String getName() {
return name;
}
/**
* <!-- begin-user-doc -->
* Returns the '<em><b>Constant Tag</b></em>' literal string value.
* @return the '<em><b>Constant Tag</b></em>' literal string value.
* <!-- end-user-doc -->
* @generated
*/
public String getLiteral() {
return literal;
}
/**
* Returns the literal value of the enumerator, which is its string representation.
* <!-- begin-user-doc -->
* @return the literal value of the enumerator, which is its string representation.
* <!-- end-user-doc -->
* @generated
*/
@Override
public String toString() {
return literal;
}
} //ConstantTag