blob: d13f043650658ecb870b95393f676bd907922aed [file] [log] [blame]
/**
* Copyright (c) 2002-2006 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v2.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v20.html
*
* Contributors:
* IBM - Initial API and implementation
*/
package org.eclipse.xsd;
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>Complex Final</b></em>'.
* @see org.eclipse.xsd.XSDComplexTypeDefinition#getFinal()
* @see org.eclipse.xsd.XSDComplexTypeDefinition#getLexicalFinal()
* @<!-- end-user-doc -->
* @see org.eclipse.xsd.XSDPackage#getXSDComplexFinal()
* @model
* @generated
*/
public enum XSDComplexFinal implements Enumerator
{
/**
* The '<em><b>Extension</b></em>' literal object.
* <!-- begin-user-doc -->
* <p>
* </p>
* <!-- end-user-doc -->
* @see #EXTENSION
* @generated
* @ordered
*/
EXTENSION_LITERAL(0, "extension", "extension"),
/**
* The '<em><b>Restriction</b></em>' literal object.
* <!-- begin-user-doc -->
* <p>
* </p>
* <!-- end-user-doc -->
* @see #RESTRICTION
* @generated
* @ordered
*/
RESTRICTION_LITERAL(1, "restriction", "restriction"),
/**
* The '<em><b>All</b></em>' literal object.
* <!-- begin-user-doc -->
* <p>
* </p>
* <!-- end-user-doc -->
* @see #ALL
* @generated
* @ordered
*/
ALL_LITERAL(2, "all", "all");
/**
* The '<em><b>Extension</b></em>' literal value.
* <!-- begin-user-doc -->
* <p>
* This is used to indicate that no derivation via extension is allowed for a complex type definition.
* </p>
* <!-- end-user-doc -->
* @see #EXTENSION_LITERAL
* @model name="extension"
* @generated
* @ordered
*/
public static final int EXTENSION = 0;
/**
* The '<em><b>Restriction</b></em>' literal value.
* <!-- begin-user-doc -->
* <p>
* This is used to indicate that no derivation via restriction is allowed for a complex type definition.
* </p>
* <!-- end-user-doc -->
* @see #RESTRICTION_LITERAL
* @model name="restriction"
* @generated
* @ordered
*/
public static final int RESTRICTION = 1;
/**
* The '<em><b>All</b></em>' literal value.
* <!-- begin-user-doc -->
* <p>
* This is used to indicate that no derivation is allowed for a complex type definition.
* It is literally expanded to extension and restriction in the infoset model.
* </p>
* <!-- end-user-doc -->
* @see #ALL_LITERAL
* @model name="all"
* @generated
* @ordered
*/
public static final int ALL = 2;
/**
* An array of all the '<em><b>Complex Final</b></em>' enumerators.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private static final XSDComplexFinal[] VALUES_ARRAY =
new XSDComplexFinal[]
{
EXTENSION_LITERAL,
RESTRICTION_LITERAL,
ALL_LITERAL,
};
/**
* A public read-only list of all the '<em><b>Complex Final</b></em>' enumerators.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public static final List<XSDComplexFinal> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
/**
* Returns the '<em><b>Complex Final</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 XSDComplexFinal get(String literal)
{
for (int i = 0; i < VALUES_ARRAY.length; ++i)
{
XSDComplexFinal result = VALUES_ARRAY[i];
if (result.toString().equals(literal))
{
return result;
}
}
return null;
}
/**
* Returns the '<em><b>Complex Final</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 XSDComplexFinal getByName(String name)
{
for (int i = 0; i < VALUES_ARRAY.length; ++i)
{
XSDComplexFinal result = VALUES_ARRAY[i];
if (result.getName().equals(name))
{
return result;
}
}
return null;
}
/**
* Returns the '<em><b>Complex Final</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 XSDComplexFinal get(int value)
{
switch (value)
{
case EXTENSION: return EXTENSION_LITERAL;
case RESTRICTION: return RESTRICTION_LITERAL;
case ALL: return ALL_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 XSDComplexFinal(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;
}
}