{
        EEnumLiteral eEnumLiteral = (EEnumLiteral)theEObject;
        T result = caseEEnumLiteral(eEnumLiteral);
        if (result == null) result = caseENamedElement(eEnumLiteral);
        if (result == null) result = caseEModelElement(eEnumLiteral);
        if (result == null) result = defaultCase(theEObject);
        return result;
      }