Class AntlrClassifier

All Implemented Interfaces:
AntlrTopLevelElement, AntlrType, IAntlrElement
Direct Known Subclasses:
AntlrClass, AntlrInterface

public abstract class AntlrClassifier extends AntlrPackageableElement implements AntlrType, AntlrTopLevelElement
  • Field Details

    • AMBIGUOUS

      public static final AntlrClassifier AMBIGUOUS
    • NOT_FOUND

      public static final AntlrClassifier NOT_FOUND
    • declaredModifiers

      protected final org.eclipse.collections.api.list.MutableList<AntlrModifier> declaredModifiers
    • declaredProperties

      protected final org.eclipse.collections.api.list.MutableList<AntlrProperty> declaredProperties
    • declaredMembers

      protected final org.eclipse.collections.api.list.MutableList<AntlrProperty> declaredMembers
    • declaredDataTypeProperties

      protected final org.eclipse.collections.api.list.MutableList<AntlrDataTypeProperty<?>> declaredDataTypeProperties
    • declaredReferenceProperties

      protected final org.eclipse.collections.api.list.MutableList<AntlrReferenceProperty<?>> declaredReferenceProperties
    • declaredAssociationEndSignatures

      protected final org.eclipse.collections.api.list.MutableList<AntlrAssociationEndSignature> declaredAssociationEndSignatures
    • declaredInterfaces

      protected final org.eclipse.collections.api.list.MutableList<AntlrInterface> declaredInterfaces
    • declaredModifiersByName

      protected final org.eclipse.collections.api.map.MutableOrderedMap<String,AntlrModifier> declaredModifiersByName
    • declaredModifiersByContext

      protected final org.eclipse.collections.api.map.MutableOrderedMap<org.antlr.v4.runtime.ParserRuleContext,AntlrModifier> declaredModifiersByContext
    • declaredDataTypePropertiesByName

      protected final org.eclipse.collections.api.map.MutableOrderedMap<String,AntlrDataTypeProperty<?>> declaredDataTypePropertiesByName
    • declaredReferencePropertiesByName

      protected final org.eclipse.collections.api.map.MutableOrderedMap<String,AntlrReferenceProperty<?>> declaredReferencePropertiesByName
    • declaredReferencePropertiesByContext

      protected final org.eclipse.collections.api.map.MutableOrderedMap<org.antlr.v4.runtime.ParserRuleContext,AntlrReferenceProperty<?>> declaredReferencePropertiesByContext
    • declaredAssociationEndSignaturesByName

      protected final org.eclipse.collections.api.map.MutableOrderedMap<String,AntlrAssociationEndSignature> declaredAssociationEndSignaturesByName
    • declaredAssociationEndSignaturesByContext

      protected final org.eclipse.collections.api.map.MutableOrderedMap<KlassParser.AssociationEndSignatureContext,AntlrAssociationEndSignature> declaredAssociationEndSignaturesByContext
  • Constructor Details

  • Method Details

    • getReferencePropertyByName

      public abstract AntlrReferenceProperty<?> getReferencePropertyByName(@Nonnull String name)
    • getDataTypePropertyByName

      public abstract AntlrDataTypeProperty<?> getDataTypePropertyByName(String name)
    • getElementBuilder

      @Nonnull public AbstractClassifier.ClassifierBuilder<?> getElementBuilder()
      Specified by:
      getElementBuilder in interface AntlrTopLevelElement
      Specified by:
      getElementBuilder in interface AntlrType
      Overrides:
      getElementBuilder in class AntlrPackageableElement
    • getTypeGetter

      @Nonnull public AbstractClassifier.ClassifierBuilder<?> getTypeGetter()
      Specified by:
      getTypeGetter in interface AntlrType
    • getAllProperties

      public final org.eclipse.collections.api.list.ImmutableList<AntlrProperty> getAllProperties()
    • getAllProperties

      protected org.eclipse.collections.api.list.ImmutableList<AntlrProperty> getAllProperties(@Nonnull org.eclipse.collections.api.list.MutableList<AntlrClassifier> visited)
    • getInheritedProperties

      protected org.eclipse.collections.api.list.ImmutableList<AntlrProperty> getInheritedProperties(@Nonnull org.eclipse.collections.api.list.MutableList<AntlrClassifier> visited)
    • getAllDataTypeProperties

      public final org.eclipse.collections.api.list.ImmutableList<AntlrDataTypeProperty<?>> getAllDataTypeProperties()
    • getAllDataTypeProperties

      protected org.eclipse.collections.api.list.ImmutableList<AntlrDataTypeProperty<?>> getAllDataTypeProperties(@Nonnull org.eclipse.collections.api.list.MutableList<AntlrClassifier> visited)
    • getInheritedDataTypeProperties

      protected org.eclipse.collections.api.list.ImmutableList<AntlrDataTypeProperty<?>> getInheritedDataTypeProperties(@Nonnull org.eclipse.collections.api.list.MutableList<AntlrClassifier> visited)
    • getAllModifiers

      protected org.eclipse.collections.api.list.ImmutableList<AntlrModifier> getAllModifiers(@Nonnull org.eclipse.collections.api.list.MutableList<AntlrClassifier> visited)
    • getInheritedModifiers

      protected org.eclipse.collections.api.list.ImmutableList<AntlrModifier> getInheritedModifiers(@Nonnull org.eclipse.collections.api.list.MutableList<AntlrClassifier> visited)
    • isTransient

      public boolean isTransient()
    • enterDataTypeProperty

      public void enterDataTypeProperty(@Nonnull AntlrDataTypeProperty<?> antlrDataTypeProperty)
    • getDeclaredAssociationEndSignatureByContext

      public AntlrAssociationEndSignature getDeclaredAssociationEndSignatureByContext(@Nonnull KlassParser.AssociationEndSignatureContext ctx)
    • getDeclaredReferencePropertyByContext

      public AntlrReferenceProperty<?> getDeclaredReferencePropertyByContext(@Nonnull org.antlr.v4.runtime.ParserRuleContext ctx)
    • enterAssociationEndSignature

      public void enterAssociationEndSignature(@Nonnull AntlrAssociationEndSignature associationEndSignature)
    • enterModifier

      public void enterModifier(@Nonnull AntlrModifier modifier)
    • getDeclaredModifiers

      public org.eclipse.collections.api.list.MutableList<AntlrModifier> getDeclaredModifiers()
    • getDeclaredModifierByContext

      public AntlrModifier getDeclaredModifierByContext(@Nonnull org.antlr.v4.runtime.ParserRuleContext modifierContext)
    • getNumClassifierModifiers

      public int getNumClassifierModifiers()
    • enterImplementsDeclaration

      public void enterImplementsDeclaration(@Nonnull AntlrInterface iface)
    • reportErrors

      @OverridingMethodsMustInvokeSuper public void reportErrors(@Nonnull CompilerAnnotationHolder compilerAnnotationHolder)
      Specified by:
      reportErrors in interface AntlrTopLevelElement
      Specified by:
      reportErrors in class AntlrPackageableElement
    • reportMultiplePropertiesWithModifiers

      protected <T extends AntlrProperty> void reportMultiplePropertiesWithModifiers(@Nonnull CompilerAnnotationHolder compilerAnnotationHolder, org.eclipse.collections.api.list.MutableList<T> properties, String... modifiersArray)
    • reportCircularInheritance

      protected void reportCircularInheritance(CompilerAnnotationHolder compilerAnnotationHolder)
    • reportPropertyDeclarationOrder

      protected void reportPropertyDeclarationOrder(CompilerAnnotationHolder compilerAnnotationHolder)
    • reportAuditErrors

      @OverridingMethodsMustInvokeSuper public void reportAuditErrors(@Nonnull CompilerAnnotationHolder compilerAnnotationHolder)
    • reportForwardReference

      protected void reportForwardReference(CompilerAnnotationHolder compilerAnnotationHolder)
    • isInterfaceRedundant

      protected boolean isInterfaceRedundant(int index, @Nonnull AntlrInterface iface)
    • interfaceNotAtIndexImplements

      protected boolean interfaceNotAtIndexImplements(int index, @Nonnull AntlrInterface iface)
    • getOffendingInterfaceReference

      protected KlassParser.InterfaceReferenceContext getOffendingInterfaceReference(int index)
    • getDuplicateMemberNames

      protected org.eclipse.collections.api.bag.ImmutableBag<String> getDuplicateMemberNames()
    • getInterfaceDataTypePropertyByName

      protected AntlrDataTypeProperty<?> getInterfaceDataTypePropertyByName(String name)
    • getInterfaceClassifierModifierByName

      protected AntlrModifier getInterfaceClassifierModifierByName(String name)
    • isSubTypeOf

      public boolean isSubTypeOf(AntlrClassifier classifier)
    • implementsInterface

      @OverridingMethodsMustInvokeSuper public boolean implementsInterface(AntlrInterface iface)
    • getAllKeyProperties

      public org.eclipse.collections.api.list.ImmutableList<AntlrDataTypeProperty<?>> getAllKeyProperties()
    • getOverriddenDataTypeProperties

      public org.eclipse.collections.api.list.ImmutableList<AntlrDataTypeProperty<?>> getOverriddenDataTypeProperties(String name)
    • getOverriddenDataTypeProperties

      protected void getOverriddenDataTypeProperties(String name, org.eclipse.collections.api.list.MutableList<AntlrDataTypeProperty<?>> overriddenProperties, org.eclipse.collections.api.set.MutableSet<AntlrClassifier> visited)
    • getSuperClass

      public Optional<AntlrClass> getSuperClass()