Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
<!-- begin-user-doc -->
<!-- end-user-doc -->
@return the first non-null result returned by a <code>caseXXX</code> call.
@generated
353105
@Override
	protected T doSwitch(int classifierID, EObject theEObject)
	{
		switch (classifierID)
		{
			case TypesPackage.JVM_IDENTIFIABLE_ELEMENT:
			{
				JvmIdentifiableElement jvmIdentifiableElement = (JvmIdentifiableElement)theEObject;
				T result = caseJvmIdentifiableElement(jvmIdentifiableElement);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case TypesPackage.JVM_TYPE:
			{
				JvmType jvmType = (JvmType)theEObject;
				T result = caseJvmType(jvmType);
				if (result == null) result = caseJvmIdentifiableElement(jvmType);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case TypesPackage.JVM_VOID:
			{
				JvmVoid jvmVoid = (JvmVoid)theEObject;
				T result = caseJvmVoid(jvmVoid);
				if (result == null) result = caseJvmType(jvmVoid);
				if (result == null) result = caseJvmIdentifiableElement(jvmVoid);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case TypesPackage.JVM_COMPONENT_TYPE:
			{
				JvmComponentType jvmComponentType = (JvmComponentType)theEObject;
				T result = caseJvmComponentType(jvmComponentType);
				if (result == null) result = caseJvmType(jvmComponentType);
				if (result == null) result = caseJvmIdentifiableElement(jvmComponentType);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case TypesPackage.JVM_PRIMITIVE_TYPE:
			{
				JvmPrimitiveType jvmPrimitiveType = (JvmPrimitiveType)theEObject;
				T result = caseJvmPrimitiveType(jvmPrimitiveType);
				if (result == null) result = caseJvmComponentType(jvmPrimitiveType);
				if (result == null) result = caseJvmType(jvmPrimitiveType);
				if (result == null) result = caseJvmIdentifiableElement(jvmPrimitiveType);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case TypesPackage.JVM_ARRAY_TYPE:
			{
				JvmArrayType jvmArrayType = (JvmArrayType)theEObject;
				T result = caseJvmArrayType(jvmArrayType);
				if (result == null) result = caseJvmComponentType(jvmArrayType);
				if (result == null) result = caseJvmType(jvmArrayType);
				if (result == null) result = caseJvmIdentifiableElement(jvmArrayType);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case TypesPackage.JVM_DECLARED_TYPE:
			{
				JvmDeclaredType jvmDeclaredType = (JvmDeclaredType)theEObject;
				T result = caseJvmDeclaredType(jvmDeclaredType);
				if (result == null) result = caseJvmMember(jvmDeclaredType);
				if (result == null) result = caseJvmComponentType(jvmDeclaredType);
				if (result == null) result = caseJvmAnnotationTarget(jvmDeclaredType);
				if (result == null) result = caseJvmType(jvmDeclaredType);
				if (result == null) result = caseJvmIdentifiableElement(jvmDeclaredType);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case TypesPackage.JVM_TYPE_PARAMETER:
			{
				JvmTypeParameter jvmTypeParameter = (JvmTypeParameter)theEObject;
				T result = caseJvmTypeParameter(jvmTypeParameter);
				if (result == null) result = caseJvmComponentType(jvmTypeParameter);
				if (result == null) result = caseJvmConstraintOwner(jvmTypeParameter);
				if (result == null) result = caseJvmType(jvmTypeParameter);
				if (result == null) result = caseJvmIdentifiableElement(jvmTypeParameter);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case TypesPackage.JVM_TYPE_PARAMETER_DECLARATOR:
			{
				JvmTypeParameterDeclarator jvmTypeParameterDeclarator = (JvmTypeParameterDeclarator)theEObject;
				T result = caseJvmTypeParameterDeclarator(jvmTypeParameterDeclarator);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case TypesPackage.JVM_CONSTRAINT_OWNER:
			{
				JvmConstraintOwner jvmConstraintOwner = (JvmConstraintOwner)theEObject;
				T result = caseJvmConstraintOwner(jvmConstraintOwner);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case TypesPackage.JVM_TYPE_CONSTRAINT:
			{
				JvmTypeConstraint jvmTypeConstraint = (JvmTypeConstraint)theEObject;
				T result = caseJvmTypeConstraint(jvmTypeConstraint);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case TypesPackage.JVM_UPPER_BOUND:
			{
				JvmUpperBound jvmUpperBound = (JvmUpperBound)theEObject;
				T result = caseJvmUpperBound(jvmUpperBound);
				if (result == null) result = caseJvmTypeConstraint(jvmUpperBound);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case TypesPackage.JVM_LOWER_BOUND:
			{
				JvmLowerBound jvmLowerBound = (JvmLowerBound)theEObject;
				T result = caseJvmLowerBound(jvmLowerBound);
				if (result == null) result = caseJvmTypeConstraint(jvmLowerBound);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case TypesPackage.JVM_ANNOTATION_TYPE:
			{
				JvmAnnotationType jvmAnnotationType = (JvmAnnotationType)theEObject;
				T result = caseJvmAnnotationType(jvmAnnotationType);
				if (result == null) result = caseJvmDeclaredType(jvmAnnotationType);
				if (result == null) result = caseJvmMember(jvmAnnotationType);
				if (result == null) result = caseJvmComponentType(jvmAnnotationType);
				if (result == null) result = caseJvmAnnotationTarget(jvmAnnotationType);
				if (result == null) result = caseJvmType(jvmAnnotationType);
				if (result == null) result = caseJvmIdentifiableElement(jvmAnnotationType);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case TypesPackage.JVM_ENUMERATION_TYPE:
			{
				JvmEnumerationType jvmEnumerationType = (JvmEnumerationType)theEObject;
				T result = caseJvmEnumerationType(jvmEnumerationType);
				if (result == null) result = caseJvmDeclaredType(jvmEnumerationType);
				if (result == null) result = caseJvmMember(jvmEnumerationType);
				if (result == null) result = caseJvmComponentType(jvmEnumerationType);
				if (result == null) result = caseJvmAnnotationTarget(jvmEnumerationType);
				if (result == null) result = caseJvmType(jvmEnumerationType);
				if (result == null) result = caseJvmIdentifiableElement(jvmEnumerationType);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case TypesPackage.JVM_ENUMERATION_LITERAL:
			{
				JvmEnumerationLiteral jvmEnumerationLiteral = (JvmEnumerationLiteral)theEObject;
				T result = caseJvmEnumerationLiteral(jvmEnumerationLiteral);
				if (result == null) result = caseJvmField(jvmEnumerationLiteral);
				if (result == null) result = caseJvmFeature(jvmEnumerationLiteral);
				if (result == null) result = caseJvmMember(jvmEnumerationLiteral);
				if (result == null) result = caseJvmAnnotationTarget(jvmEnumerationLiteral);
				if (result == null) result = caseJvmIdentifiableElement(jvmEnumerationLiteral);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case TypesPackage.JVM_GENERIC_TYPE:
			{
				JvmGenericType jvmGenericType = (JvmGenericType)theEObject;
				T result = caseJvmGenericType(jvmGenericType);
				if (result == null) result = caseJvmDeclaredType(jvmGenericType);
				if (result == null) result = caseJvmTypeParameterDeclarator(jvmGenericType);
				if (result == null) result = caseJvmMember(jvmGenericType);
				if (result == null) result = caseJvmComponentType(jvmGenericType);
				if (result == null) result = caseJvmAnnotationTarget(jvmGenericType);
				if (result == null) result = caseJvmType(jvmGenericType);
				if (result == null) result = caseJvmIdentifiableElement(jvmGenericType);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case TypesPackage.JVM_TYPE_REFERENCE:
			{
				JvmTypeReference jvmTypeReference = (JvmTypeReference)theEObject;
				T result = caseJvmTypeReference(jvmTypeReference);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case TypesPackage.JVM_PARAMETERIZED_TYPE_REFERENCE:
			{
				JvmParameterizedTypeReference jvmParameterizedTypeReference = (JvmParameterizedTypeReference)theEObject;
				T result = caseJvmParameterizedTypeReference(jvmParameterizedTypeReference);
				if (result == null) result = caseJvmTypeReference(jvmParameterizedTypeReference);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case TypesPackage.JVM_GENERIC_ARRAY_TYPE_REFERENCE:
			{
				JvmGenericArrayTypeReference jvmGenericArrayTypeReference = (JvmGenericArrayTypeReference)theEObject;
				T result = caseJvmGenericArrayTypeReference(jvmGenericArrayTypeReference);
				if (result == null) result = caseJvmTypeReference(jvmGenericArrayTypeReference);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case TypesPackage.JVM_WILDCARD_TYPE_REFERENCE:
			{
				JvmWildcardTypeReference jvmWildcardTypeReference = (JvmWildcardTypeReference)theEObject;
				T result = caseJvmWildcardTypeReference(jvmWildcardTypeReference);
				if (result == null) result = caseJvmTypeReference(jvmWildcardTypeReference);
				if (result == null) result = caseJvmConstraintOwner(jvmWildcardTypeReference);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case TypesPackage.JVM_ANY_TYPE_REFERENCE:
			{
				JvmAnyTypeReference jvmAnyTypeReference = (JvmAnyTypeReference)theEObject;
				T result = caseJvmAnyTypeReference(jvmAnyTypeReference);
				if (result == null) result = caseJvmTypeReference(jvmAnyTypeReference);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case TypesPackage.JVM_MULTI_TYPE_REFERENCE:
			{
				JvmMultiTypeReference jvmMultiTypeReference = (JvmMultiTypeReference)theEObject;
				T result = caseJvmMultiTypeReference(jvmMultiTypeReference);
				if (result == null) result = caseJvmCompoundTypeReference(jvmMultiTypeReference);
				if (result == null) result = caseJvmTypeReference(jvmMultiTypeReference);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case TypesPackage.JVM_MEMBER:
			{
				JvmMember jvmMember = (JvmMember)theEObject;
				T result = caseJvmMember(jvmMember);
				if (result == null) result = caseJvmAnnotationTarget(jvmMember);
				if (result == null) result = caseJvmIdentifiableElement(jvmMember);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case TypesPackage.JVM_FEATURE:
			{
				JvmFeature jvmFeature = (JvmFeature)theEObject;
				T result = caseJvmFeature(jvmFeature);
				if (result == null) result = caseJvmMember(jvmFeature);
				if (result == null) result = caseJvmAnnotationTarget(jvmFeature);
				if (result == null) result = caseJvmIdentifiableElement(jvmFeature);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case TypesPackage.JVM_FIELD:
			{
				JvmField jvmField = (JvmField)theEObject;
				T result = caseJvmField(jvmField);
				if (result == null) result = caseJvmFeature(jvmField);
				if (result == null) result = caseJvmMember(jvmField);
				if (result == null) result = caseJvmAnnotationTarget(jvmField);
				if (result == null) result = caseJvmIdentifiableElement(jvmField);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case TypesPackage.JVM_EXECUTABLE:
			{
				JvmExecutable jvmExecutable = (JvmExecutable)theEObject;
				T result = caseJvmExecutable(jvmExecutable);
				if (result == null) result = caseJvmFeature(jvmExecutable);
				if (result == null) result = caseJvmTypeParameterDeclarator(jvmExecutable);
				if (result == null) result = caseJvmMember(jvmExecutable);
				if (result == null) result = caseJvmAnnotationTarget(jvmExecutable);
				if (result == null) result = caseJvmIdentifiableElement(jvmExecutable);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case TypesPackage.JVM_CONSTRUCTOR:
			{
				JvmConstructor jvmConstructor = (JvmConstructor)theEObject;
				T result = caseJvmConstructor(jvmConstructor);
				if (result == null) result = caseJvmExecutable(jvmConstructor);
				if (result == null) result = caseJvmFeature(jvmConstructor);
				if (result == null) result = caseJvmTypeParameterDeclarator(jvmConstructor);
				if (result == null) result = caseJvmMember(jvmConstructor);
				if (result == null) result = caseJvmAnnotationTarget(jvmConstructor);
				if (result == null) result = caseJvmIdentifiableElement(jvmConstructor);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case TypesPackage.JVM_OPERATION:
			{
				JvmOperation jvmOperation = (JvmOperation)theEObject;
				T result = caseJvmOperation(jvmOperation);
				if (result == null) result = caseJvmExecutable(jvmOperation);
				if (result == null) result = caseJvmFeature(jvmOperation);
				if (result == null) result = caseJvmTypeParameterDeclarator(jvmOperation);
				if (result == null) result = caseJvmMember(jvmOperation);
				if (result == null) result = caseJvmAnnotationTarget(jvmOperation);
				if (result == null) result = caseJvmIdentifiableElement(jvmOperation);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case TypesPackage.JVM_FORMAL_PARAMETER:
			{
				JvmFormalParameter jvmFormalParameter = (JvmFormalParameter)theEObject;
				T result = caseJvmFormalParameter(jvmFormalParameter);
				if (result == null) result = caseJvmAnnotationTarget(jvmFormalParameter);
				if (result == null) result = caseJvmIdentifiableElement(jvmFormalParameter);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case TypesPackage.JVM_ANNOTATION_TARGET:
			{
				JvmAnnotationTarget jvmAnnotationTarget = (JvmAnnotationTarget)theEObject;
				T result = caseJvmAnnotationTarget(jvmAnnotationTarget);
				if (result == null) result = caseJvmIdentifiableElement(jvmAnnotationTarget);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case TypesPackage.JVM_ANNOTATION_REFERENCE:
			{
				JvmAnnotationReference jvmAnnotationReference = (JvmAnnotationReference)theEObject;
				T result = caseJvmAnnotationReference(jvmAnnotationReference);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case TypesPackage.JVM_ANNOTATION_VALUE:
			{
				JvmAnnotationValue jvmAnnotationValue = (JvmAnnotationValue)theEObject;
				T result = caseJvmAnnotationValue(jvmAnnotationValue);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case TypesPackage.JVM_INT_ANNOTATION_VALUE:
			{
				JvmIntAnnotationValue jvmIntAnnotationValue = (JvmIntAnnotationValue)theEObject;
				T result = caseJvmIntAnnotationValue(jvmIntAnnotationValue);
				if (result == null) result = caseJvmAnnotationValue(jvmIntAnnotationValue);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case TypesPackage.JVM_BOOLEAN_ANNOTATION_VALUE:
			{
				JvmBooleanAnnotationValue jvmBooleanAnnotationValue = (JvmBooleanAnnotationValue)theEObject;
				T result = caseJvmBooleanAnnotationValue(jvmBooleanAnnotationValue);
				if (result == null) result = caseJvmAnnotationValue(jvmBooleanAnnotationValue);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case TypesPackage.JVM_BYTE_ANNOTATION_VALUE:
			{
				JvmByteAnnotationValue jvmByteAnnotationValue = (JvmByteAnnotationValue)theEObject;
				T result = caseJvmByteAnnotationValue(jvmByteAnnotationValue);
				if (result == null) result = caseJvmAnnotationValue(jvmByteAnnotationValue);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case TypesPackage.JVM_SHORT_ANNOTATION_VALUE:
			{
				JvmShortAnnotationValue jvmShortAnnotationValue = (JvmShortAnnotationValue)theEObject;
				T result = caseJvmShortAnnotationValue(jvmShortAnnotationValue);
				if (result == null) result = caseJvmAnnotationValue(jvmShortAnnotationValue);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case TypesPackage.JVM_LONG_ANNOTATION_VALUE:
			{
				JvmLongAnnotationValue jvmLongAnnotationValue = (JvmLongAnnotationValue)theEObject;
				T result = caseJvmLongAnnotationValue(jvmLongAnnotationValue);
				if (result == null) result = caseJvmAnnotationValue(jvmLongAnnotationValue);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case TypesPackage.JVM_DOUBLE_ANNOTATION_VALUE:
			{
				JvmDoubleAnnotationValue jvmDoubleAnnotationValue = (JvmDoubleAnnotationValue)theEObject;
				T result = caseJvmDoubleAnnotationValue(jvmDoubleAnnotationValue);
				if (result == null) result = caseJvmAnnotationValue(jvmDoubleAnnotationValue);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case TypesPackage.JVM_FLOAT_ANNOTATION_VALUE:
			{
				JvmFloatAnnotationValue jvmFloatAnnotationValue = (JvmFloatAnnotationValue)theEObject;
				T result = caseJvmFloatAnnotationValue(jvmFloatAnnotationValue);
				if (result == null) result = caseJvmAnnotationValue(jvmFloatAnnotationValue);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case TypesPackage.JVM_CHAR_ANNOTATION_VALUE:
			{
				JvmCharAnnotationValue jvmCharAnnotationValue = (JvmCharAnnotationValue)theEObject;
				T result = caseJvmCharAnnotationValue(jvmCharAnnotationValue);
				if (result == null) result = caseJvmAnnotationValue(jvmCharAnnotationValue);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case TypesPackage.JVM_STRING_ANNOTATION_VALUE:
			{
				JvmStringAnnotationValue jvmStringAnnotationValue = (JvmStringAnnotationValue)theEObject;
				T result = caseJvmStringAnnotationValue(jvmStringAnnotationValue);
				if (result == null) result = caseJvmAnnotationValue(jvmStringAnnotationValue);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case TypesPackage.JVM_TYPE_ANNOTATION_VALUE:
			{
				JvmTypeAnnotationValue jvmTypeAnnotationValue = (JvmTypeAnnotationValue)theEObject;
				T result = caseJvmTypeAnnotationValue(jvmTypeAnnotationValue);
				if (result == null) result = caseJvmAnnotationValue(jvmTypeAnnotationValue);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case TypesPackage.JVM_ANNOTATION_ANNOTATION_VALUE:
			{
				JvmAnnotationAnnotationValue jvmAnnotationAnnotationValue = (JvmAnnotationAnnotationValue)theEObject;
				T result = caseJvmAnnotationAnnotationValue(jvmAnnotationAnnotationValue);
				if (result == null) result = caseJvmAnnotationValue(jvmAnnotationAnnotationValue);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case TypesPackage.JVM_ENUM_ANNOTATION_VALUE:
			{
				JvmEnumAnnotationValue jvmEnumAnnotationValue = (JvmEnumAnnotationValue)theEObject;
				T result = caseJvmEnumAnnotationValue(jvmEnumAnnotationValue);
				if (result == null) result = caseJvmAnnotationValue(jvmEnumAnnotationValue);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case TypesPackage.JVM_DELEGATE_TYPE_REFERENCE:
			{
				JvmDelegateTypeReference jvmDelegateTypeReference = (JvmDelegateTypeReference)theEObject;
				T result = caseJvmDelegateTypeReference(jvmDelegateTypeReference);
				if (result == null) result = caseJvmTypeReference(jvmDelegateTypeReference);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case TypesPackage.JVM_SPECIALIZED_TYPE_REFERENCE:
			{
				JvmSpecializedTypeReference jvmSpecializedTypeReference = (JvmSpecializedTypeReference)theEObject;
				T result = caseJvmSpecializedTypeReference(jvmSpecializedTypeReference);
				if (result == null) result = caseJvmTypeReference(jvmSpecializedTypeReference);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case TypesPackage.JVM_SYNONYM_TYPE_REFERENCE:
			{
				JvmSynonymTypeReference jvmSynonymTypeReference = (JvmSynonymTypeReference)theEObject;
				T result = caseJvmSynonymTypeReference(jvmSynonymTypeReference);
				if (result == null) result = caseJvmCompoundTypeReference(jvmSynonymTypeReference);
				if (result == null) result = caseJvmTypeReference(jvmSynonymTypeReference);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case TypesPackage.JVM_UNKNOWN_TYPE_REFERENCE:
			{
				JvmUnknownTypeReference jvmUnknownTypeReference = (JvmUnknownTypeReference)theEObject;
				T result = caseJvmUnknownTypeReference(jvmUnknownTypeReference);
				if (result == null) result = caseJvmTypeReference(jvmUnknownTypeReference);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case TypesPackage.JVM_COMPOUND_TYPE_REFERENCE:
			{
				JvmCompoundTypeReference jvmCompoundTypeReference = (JvmCompoundTypeReference)theEObject;
				T result = caseJvmCompoundTypeReference(jvmCompoundTypeReference);
				if (result == null) result = caseJvmTypeReference(jvmCompoundTypeReference);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case TypesPackage.JVM_CUSTOM_ANNOTATION_VALUE:
			{
				JvmCustomAnnotationValue jvmCustomAnnotationValue = (JvmCustomAnnotationValue)theEObject;
				T result = caseJvmCustomAnnotationValue(jvmCustomAnnotationValue);
				if (result == null) result = caseJvmAnnotationValue(jvmCustomAnnotationValue);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case TypesPackage.JVM_INNER_TYPE_REFERENCE:
			{
				JvmInnerTypeReference jvmInnerTypeReference = (JvmInnerTypeReference)theEObject;
				T result = caseJvmInnerTypeReference(jvmInnerTypeReference);
				if (result == null) result = caseJvmParameterizedTypeReference(jvmInnerTypeReference);
				if (result == null) result = caseJvmTypeReference(jvmInnerTypeReference);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			default: return defaultCase(theEObject);
		}
	}
401564
public ITestCaseGenerator getGenerator( String functionName)
    {
    ITestCaseGenerator generator = generators_.get( getFunctionKey( functionName));
    return generator==null? generators_.get( ALL) : generator;
    }
1113310
@SuppressWarnings("unchecked")
  T result(final Object r) {
    return (T) (r == NULL ? null : r);
  }
1031460
public ClassInfoList getAllClasses() {
        if (closed.get()) {
            throw new IllegalArgumentException("Cannot use a ScanResult after it has been closed");
        }
        if (!scanSpec.enableClassInfo) {
            throw new IllegalArgumentException("Please call ClassGraph#enableClassInfo() before #scan()");
        }
        return ClassInfo.getAllClasses(classNameToClassInfo.values(), scanSpec);
    }
1239290
private static MethodRef getOneOfCaseMethod(OneofDescriptor descriptor) {
    TypeInfo message = messageRuntimeType(descriptor.getContainingType());
    return MethodRef.createInstanceMethod(
            message,
            new Method(
                "get" + underscoresToCamelCase(descriptor.getName(), true) + "Case",
                TypeInfo.create(JavaQualifiedNames.getCaseEnumClassName(descriptor)).type(),
                NO_METHOD_ARGS))
        .asCheap();
  }
459822
public EntityResult<SqlResultSetMapping<T>> getOrCreateEntityResult()
   {
      List<Node> nodeList = childNode.get("entity-result");
      if (nodeList != null &&  nodeList.size() > 0)
      {
         return new EntityResultImpl<SqlResultSetMapping<T>>(this, "entity-result", childNode, nodeList.get(0));
      }
      return createEntityResult();
   }
51185
public T one() {
        this.beforeCheck();

        String sql = this.buildSelectSQL(true);

        T model = this.queryOne(modelClass, sql, paramValues);

        ifThen(null != model && null != joinParams,
                () -> this.setJoin(Collections.singletonList(model)));

        return model;
    }
848604
@Nonnull
	public <V1 extends T1, V2 extends T2> LObjIntObjPredicateBuilder<T1, T2> aCase(Class<V1> argC1, Class<V2> argC3, LObjIntObjPredicate<V1, V2> function) {
		PartialCaseWithBoolProduct.The pc = partialCaseFactoryMethod((a1, a2, a3) -> (argC1 == null || argC1.isInstance(a1)) && (argC3 == null || argC3.isInstance(a2)));

		pc.evaluate(function);
		return self();
	}
1025038
@Override
    public <C, R> SimpleCase<C, R> selectCase(Expression<? extends C> arg0)
    {
        // TODO Auto-generated method stub
        return null;
    }
872980
@Override
	public <T> T first(final Class<T> type) {
		return findFirst(type).orElseThrow(() -> new DataNotFoundException("query result is empty."));
	}
696017
@Nonnull
	public <V1 extends T1, V2 extends T2> LBiObjFltConsumerBuilder<T1, T2> aCase(Class<V1> argC1, Class<V2> argC2, LBiObjFltConsumer<V1, V2> function) {
		PartialCase.The pc = partialCaseFactoryMethod((a1, a2, a3) -> (argC1 == null || argC1.isInstance(a1)) && (argC2 == null || argC2.isInstance(a2)));

		pc.evaluate(function);
		return self();
	}
1151393
public int nextCaseMapCP() {
        int c;
        if(cpLimit<limit) {
            cpStart=cpLimit;
            c=rep.char32At(cpLimit);
            cpLimit+=UTF16.getCharCount(c);
            return c;
        } else {
            return -1;
        }
    }
1348972
@Override
    public CompletableFuture<T> getNext() {
        // Verify no other call to getNext() is currently executing.
        return getNextBucket()
                .thenCompose(bucket -> {
                    if (bucket == null) {
                        // We are done.
                        return CompletableFuture.completedFuture(null);
                    } else {
                        // Convert the TableBucket into the desired result.
                        return this.resultConverter.apply(bucket);
                    }
                });
    }
135812
@Nonnull
	public <V1 extends T1, V2 extends T2> LBiObjDblConsumerBuilder<T1, T2> casesOf(Class<V1> argC1, Class<V2> argC2, Consumer<LBiObjDblConsumerBuilder<V1, V2>> pcpConsumer) {
		PartialCase.The pc = partialCaseFactoryMethod((a1, a2, a3) -> (argC1 == null || argC1.isInstance(a1)) && (argC2 == null || argC2.isInstance(a2)));

		pc.specifySubCases((Consumer) pcpConsumer);
		return self();
	}
718209
public ClassInfoList getAllAnnotations() {
        if (closed.get()) {
            throw new IllegalArgumentException("Cannot use a ScanResult after it has been closed");
        }
        if (!scanSpec.enableClassInfo || !scanSpec.enableAnnotationInfo) {
            throw new IllegalArgumentException(
                    "Please call ClassGraph#enableClassInfo() and #enableAnnotationInfo() before #scan()");
        }
        return ClassInfo.getAllAnnotationClasses(classNameToClassInfo.values(), scanSpec);
    }
19014
@Nonnull
	public <V extends T> LObjIntCharFunctionBuilder<T, R> casesOf(Class<V> argC1, Consumer<LObjIntCharFunctionBuilder<V, R>> pcpConsumer) {
		PartialCaseWithProduct.The pc = partialCaseFactoryMethod((a1, a2, a3) -> (argC1 == null || argC1.isInstance(a1)));

		pc.specifySubCases((Consumer) pcpConsumer);
		return self();
	}
369264
@Nullable
  public ResultT first() {
    final CoreRemoteMongoCursor<ResultT> cursor = iterator();
    if (!cursor.hasNext()) {
      return null;
    }
    return cursor.next();
  }