blob: 6d9f41a719927180e8060dc24f32b87c47640e65 [file] [log] [blame]
/*
* Copyright (c) 2006, 2018 IBM Corporation, CEA, and others.
* 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:
* IBM - initial API and implementation
* Christian W. Damus (CEA) - 251963
* Kenn Hussey (CEA) - 418466, 451350, 485756
* Kenn Hussey - 342235
*
*/
package org.eclipse.uml2.uml;
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>Parameter Direction Kind</b></em>',
* and utility methods for working with them.
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* ParameterDirectionKind is an Enumeration that defines literals used to specify direction of parameters.
* <p>From package UML::Classification.</p>
* <!-- end-model-doc -->
* @see org.eclipse.uml2.uml.UMLPackage#getParameterDirectionKind()
* @model
* @generated
*/
public enum ParameterDirectionKind
implements Enumerator {
/**
* The '<em><b>In</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* Indicates that Parameter values are passed in by the caller.
* <!-- end-model-doc -->
* @see #IN
* @generated
* @ordered
*/
IN_LITERAL(0, "in", "in"), //$NON-NLS-1$ //$NON-NLS-2$
/**
* The '<em><b>Inout</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* Indicates that Parameter values are passed in by the caller and (possibly different) values passed out to the caller.
* <!-- end-model-doc -->
* @see #INOUT
* @generated
* @ordered
*/
INOUT_LITERAL(1, "inout", "inout"), //$NON-NLS-1$ //$NON-NLS-2$
/**
* The '<em><b>Out</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* Indicates that Parameter values are passed out to the caller.
* <!-- end-model-doc -->
* @see #OUT
* @generated
* @ordered
*/
OUT_LITERAL(2, "out", "out"), //$NON-NLS-1$ //$NON-NLS-2$
/**
* The '<em><b>Return</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* Indicates that Parameter values are passed as return values back to the caller.
* <!-- end-model-doc -->
* @see #RETURN
* @generated
* @ordered
*/
RETURN_LITERAL(3, "return", "return"); //$NON-NLS-1$ //$NON-NLS-2$
/**
* The '<em><b>In</b></em>' literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* Indicates that Parameter values are passed in by the caller.
* <!-- end-model-doc -->
* @see #IN_LITERAL
* @model name="in"
* @generated
* @ordered
*/
public static final int IN = 0;
/**
* The '<em><b>Inout</b></em>' literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* Indicates that Parameter values are passed in by the caller and (possibly different) values passed out to the caller.
* <!-- end-model-doc -->
* @see #INOUT_LITERAL
* @model name="inout"
* @generated
* @ordered
*/
public static final int INOUT = 1;
/**
* The '<em><b>Out</b></em>' literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* Indicates that Parameter values are passed out to the caller.
* <!-- end-model-doc -->
* @see #OUT_LITERAL
* @model name="out"
* @generated
* @ordered
*/
public static final int OUT = 2;
/**
* The '<em><b>Return</b></em>' literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* Indicates that Parameter values are passed as return values back to the caller.
* <!-- end-model-doc -->
* @see #RETURN_LITERAL
* @model name="return"
* @generated
* @ordered
*/
public static final int RETURN = 3;
/**
* An array of all the '<em><b>Parameter Direction Kind</b></em>' enumerators.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private static final ParameterDirectionKind[] VALUES_ARRAY = new ParameterDirectionKind[]{
IN_LITERAL, INOUT_LITERAL, OUT_LITERAL, RETURN_LITERAL,};
/**
* A public read-only list of all the '<em><b>Parameter Direction Kind</b></em>' enumerators.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public static final List<ParameterDirectionKind> VALUES = Collections
.unmodifiableList(Arrays.asList(VALUES_ARRAY));
/**
* Returns the '<em><b>Parameter Direction Kind</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 ParameterDirectionKind get(String literal) {
for (int i = 0; i < VALUES_ARRAY.length; ++i) {
ParameterDirectionKind result = VALUES_ARRAY[i];
if (result.toString().equals(literal)) {
return result;
}
}
return null;
}
/**
* Returns the '<em><b>Parameter Direction Kind</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 ParameterDirectionKind getByName(String name) {
for (int i = 0; i < VALUES_ARRAY.length; ++i) {
ParameterDirectionKind result = VALUES_ARRAY[i];
if (result.getName().equals(name)) {
return result;
}
}
return null;
}
/**
* Returns the '<em><b>Parameter Direction Kind</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 ParameterDirectionKind get(int value) {
switch (value) {
case IN :
return IN_LITERAL;
case INOUT :
return INOUT_LITERAL;
case OUT :
return OUT_LITERAL;
case RETURN :
return RETURN_LITERAL;
}
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 ParameterDirectionKind(int value, String name, String literal) {
this.value = value;
this.name = name;
this.literal = literal;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public int getValue() {
return value;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public String getName() {
return name;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
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;
}
} //ParameterDirectionKind