Operation.java
/**
* *
* Copyright (c) 2004-2025 Carnegie Mellon University and others. (see Contributors file).
* All Rights Reserved.
*
* NO WARRANTY. ALL MATERIAL IS FURNISHED ON AN "AS-IS" BASIS. CARNEGIE MELLON UNIVERSITY MAKES NO WARRANTIES OF ANY
* KIND, EITHER EXPRESSED OR IMPLIED, AS TO ANY MATTER INCLUDING, BUT NOT LIMITED TO, WARRANTY OF FITNESS FOR PURPOSE
* OR MERCHANTABILITY, EXCLUSIVITY, OR RESULTS OBTAINED FROM USE OF THE MATERIAL. CARNEGIE MELLON UNIVERSITY DOES NOT
* MAKE ANY WARRANTY OF ANY KIND WITH RESPECT TO FREEDOM FROM PATENT, TRADEMARK, OR COPYRIGHT INFRINGEMENT.
*
* This program and the accompanying materials are made available under the terms of the Eclipse Public License 2.0
* which is available at https://www.eclipse.org/legal/epl-2.0/
* SPDX-License-Identifier: EPL-2.0
*
* Created, in part, with funding and support from the United States Government. (see Acknowledgments file).
*
* This program includes and/or can make use of certain third party source code, object code, documentation and other
* files ("Third Party Software"). The Third Party Software that is used by this program is dependent upon your system
* configuration. By using this program, You agree to comply with any and all relevant Third Party Software terms and
* conditions contained in any such Third Party Software or separate license file distributed with such Third Party
* Software. The parties who own the Third Party Software ("Third Party Licensors") are intended third party benefici-
* aries to this license with respect to the terms applicable to their Third Party Software. Third Party Software li-
* censes only apply to the Third Party Software and not any other portion of this program or this program as a whole.
*/
package org.osate.alisa.common.common;
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>Operation</b></em>',
* and utility methods for working with them.
* <!-- end-user-doc -->
* @see org.osate.alisa.common.common.CommonPackage#getOperation()
* @model
* @generated
*/
public enum Operation implements Enumerator
{
/**
* The '<em><b>OR</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #OR_VALUE
* @generated
* @ordered
*/
OR(0, "OR", "or"),
/**
* The '<em><b>ALT OR</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #ALT_OR_VALUE
* @generated
* @ordered
*/
ALT_OR(1, "ALT_OR", "||"),
/**
* The '<em><b>AND</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #AND_VALUE
* @generated
* @ordered
*/
AND(2, "AND", "and"),
/**
* The '<em><b>ALT AND</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #ALT_AND_VALUE
* @generated
* @ordered
*/
ALT_AND(3, "ALT_AND", "&&"),
/**
* The '<em><b>EQ</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #EQ_VALUE
* @generated
* @ordered
*/
EQ(4, "EQ", "=="),
/**
* The '<em><b>NEQ</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #NEQ_VALUE
* @generated
* @ordered
*/
NEQ(5, "NEQ", "!="),
/**
* The '<em><b>GEQ</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #GEQ_VALUE
* @generated
* @ordered
*/
GEQ(6, "GEQ", ">="),
/**
* The '<em><b>LEQ</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #LEQ_VALUE
* @generated
* @ordered
*/
LEQ(7, "LEQ", "<="),
/**
* The '<em><b>GT</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #GT_VALUE
* @generated
* @ordered
*/
GT(8, "GT", ">"),
/**
* The '<em><b>LT</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #LT_VALUE
* @generated
* @ordered
*/
LT(9, "LT", "<"),
/**
* The '<em><b>IN</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #IN_VALUE
* @generated
* @ordered
*/
IN(10, "IN", "><"),
/**
* The '<em><b>PLUS</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #PLUS_VALUE
* @generated
* @ordered
*/
PLUS(11, "PLUS", "+"),
/**
* The '<em><b>MINUS</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #MINUS_VALUE
* @generated
* @ordered
*/
MINUS(12, "MINUS", "-"),
/**
* The '<em><b>MULT</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #MULT_VALUE
* @generated
* @ordered
*/
MULT(13, "MULT", "*"),
/**
* The '<em><b>DIV</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #DIV_VALUE
* @generated
* @ordered
*/
DIV(14, "DIV", "/"),
/**
* The '<em><b>INTDIV</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #INTDIV_VALUE
* @generated
* @ordered
*/
INTDIV(15, "INTDIV", "div"),
/**
* The '<em><b>MOD</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #MOD_VALUE
* @generated
* @ordered
*/
MOD(16, "MOD", "mod"),
/**
* The '<em><b>NOT</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #NOT_VALUE
* @generated
* @ordered
*/
NOT(17, "NOT", "not");
/**
* The '<em><b>OR</b></em>' literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #OR
* @model literal="or"
* @generated
* @ordered
*/
public static final int OR_VALUE = 0;
/**
* The '<em><b>ALT OR</b></em>' literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #ALT_OR
* @model literal="||"
* @generated
* @ordered
*/
public static final int ALT_OR_VALUE = 1;
/**
* The '<em><b>AND</b></em>' literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #AND
* @model literal="and"
* @generated
* @ordered
*/
public static final int AND_VALUE = 2;
/**
* The '<em><b>ALT AND</b></em>' literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #ALT_AND
* @model literal="&&"
* @generated
* @ordered
*/
public static final int ALT_AND_VALUE = 3;
/**
* The '<em><b>EQ</b></em>' literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #EQ
* @model literal="=="
* @generated
* @ordered
*/
public static final int EQ_VALUE = 4;
/**
* The '<em><b>NEQ</b></em>' literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #NEQ
* @model literal="!="
* @generated
* @ordered
*/
public static final int NEQ_VALUE = 5;
/**
* The '<em><b>GEQ</b></em>' literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #GEQ
* @model literal=">="
* @generated
* @ordered
*/
public static final int GEQ_VALUE = 6;
/**
* The '<em><b>LEQ</b></em>' literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #LEQ
* @model literal="<="
* @generated
* @ordered
*/
public static final int LEQ_VALUE = 7;
/**
* The '<em><b>GT</b></em>' literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #GT
* @model literal=">"
* @generated
* @ordered
*/
public static final int GT_VALUE = 8;
/**
* The '<em><b>LT</b></em>' literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #LT
* @model literal="<"
* @generated
* @ordered
*/
public static final int LT_VALUE = 9;
/**
* The '<em><b>IN</b></em>' literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #IN
* @model literal="><"
* @generated
* @ordered
*/
public static final int IN_VALUE = 10;
/**
* The '<em><b>PLUS</b></em>' literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #PLUS
* @model literal="+"
* @generated
* @ordered
*/
public static final int PLUS_VALUE = 11;
/**
* The '<em><b>MINUS</b></em>' literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #MINUS
* @model literal="-"
* @generated
* @ordered
*/
public static final int MINUS_VALUE = 12;
/**
* The '<em><b>MULT</b></em>' literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #MULT
* @model literal="*"
* @generated
* @ordered
*/
public static final int MULT_VALUE = 13;
/**
* The '<em><b>DIV</b></em>' literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #DIV
* @model literal="/"
* @generated
* @ordered
*/
public static final int DIV_VALUE = 14;
/**
* The '<em><b>INTDIV</b></em>' literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #INTDIV
* @model literal="div"
* @generated
* @ordered
*/
public static final int INTDIV_VALUE = 15;
/**
* The '<em><b>MOD</b></em>' literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #MOD
* @model literal="mod"
* @generated
* @ordered
*/
public static final int MOD_VALUE = 16;
/**
* The '<em><b>NOT</b></em>' literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #NOT
* @model literal="not"
* @generated
* @ordered
*/
public static final int NOT_VALUE = 17;
/**
* An array of all the '<em><b>Operation</b></em>' enumerators.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private static final Operation[] VALUES_ARRAY =
new Operation[]
{
OR,
ALT_OR,
AND,
ALT_AND,
EQ,
NEQ,
GEQ,
LEQ,
GT,
LT,
IN,
PLUS,
MINUS,
MULT,
DIV,
INTDIV,
MOD,
NOT,
};
/**
* A public read-only list of all the '<em><b>Operation</b></em>' enumerators.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public static final List<Operation> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
/**
* Returns the '<em><b>Operation</b></em>' literal with the specified literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param literal the literal.
* @return the matching enumerator or <code>null</code>.
* @generated
*/
public static Operation get(String literal)
{
for (int i = 0; i < VALUES_ARRAY.length; ++i)
{
Operation result = VALUES_ARRAY[i];
if (result.toString().equals(literal))
{
return result;
}
}
return null;
}
/**
* Returns the '<em><b>Operation</b></em>' literal with the specified name.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param name the name.
* @return the matching enumerator or <code>null</code>.
* @generated
*/
public static Operation getByName(String name)
{
for (int i = 0; i < VALUES_ARRAY.length; ++i)
{
Operation result = VALUES_ARRAY[i];
if (result.getName().equals(name))
{
return result;
}
}
return null;
}
/**
* Returns the '<em><b>Operation</b></em>' literal with the specified integer value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the integer value.
* @return the matching enumerator or <code>null</code>.
* @generated
*/
public static Operation get(int value)
{
switch (value)
{
case OR_VALUE: return OR;
case ALT_OR_VALUE: return ALT_OR;
case AND_VALUE: return AND;
case ALT_AND_VALUE: return ALT_AND;
case EQ_VALUE: return EQ;
case NEQ_VALUE: return NEQ;
case GEQ_VALUE: return GEQ;
case LEQ_VALUE: return LEQ;
case GT_VALUE: return GT;
case LT_VALUE: return LT;
case IN_VALUE: return IN;
case PLUS_VALUE: return PLUS;
case MINUS_VALUE: return MINUS;
case MULT_VALUE: return MULT;
case DIV_VALUE: return DIV;
case INTDIV_VALUE: return INTDIV;
case MOD_VALUE: return MOD;
case NOT_VALUE: return NOT;
}
return null;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private final int value;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private final String name;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private final String literal;
/**
* Only this class can construct instances.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private Operation(int value, String name, String literal)
{
this.value = value;
this.name = name;
this.literal = literal;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public int getValue()
{
return value;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public String getName()
{
return name;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public String getLiteral()
{
return literal;
}
/**
* Returns the literal value of the enumerator, which is its string representation.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public String toString()
{
return literal;
}
} //Operation