Interface IModelElementVisitable

All Known Subinterfaces:
IAssembly, IAssemblyDefinition, IAssemblyInstance, IAssemblyInstanceAbsolute, IAssemblyInstanceGrouped, IBindingDefinitionModel, IBindingDefinitionModelAssembly, IBindingInstance, IBindingInstanceModel, IBindingModelElement, IBoundDefinition, IBoundDefinitionFlag, IBoundDefinitionModel<ITEM>, IBoundDefinitionModelAssembly, IBoundDefinitionModelComplex, IBoundDefinitionModelField<ITEM>, IBoundDefinitionModelFieldComplex, IBoundInstance<ITEM>, IBoundInstanceFlag, IBoundInstanceModel<ITEM>, IBoundInstanceModelAssembly, IBoundInstanceModelChoiceGroup, IBoundInstanceModelField<ITEM>, IBoundInstanceModelFieldComplex, IBoundInstanceModelFieldScalar, IBoundInstanceModelGroupedAssembly, IBoundInstanceModelGroupedField, IBoundInstanceModelGroupedNamed, IBoundInstanceModelNamed<ITEM>, IBoundModelElement, IChoiceGroupInstance, IChoiceInstance, IDefinition, IFeatureContainerFlag<FI>, IFeatureDefinitionInstanceInlined<DEFINITION,INSTANCE>, IFeatureDefinitionReferenceInstance<DEFINITION,INSTANCE>, IFeatureValueless, IField, IFieldDefinition, IFieldInstance, IFieldInstanceAbsolute, IFieldInstanceGrouped, IFlag, IFlagDefinition, IFlagInstance, IGroupable, IInstance, IInstanceAbsolute, IModelDefinition, IModelElement, IModelInstance, IModelInstanceAbsolute, INamedInstance, INamedModelElement, INamedModelInstance, INamedModelInstanceAbsolute, INamedModelInstanceGrouped, IValuedDefinition, IValuedInstance
All Known Implementing Classes:
AbstractAssemblyInstance, AbstractChoiceGroupInstance, AbstractChoiceInstance, AbstractFieldInstance, AbstractFlagInstance, AbstractGlobalAssemblyDefinition, AbstractGlobalDefinition, AbstractGlobalFieldDefinition, AbstractGlobalFlagDefinition, AbstractInlineAssemblyDefinition, AbstractInlineFieldDefinition, AbstractInlineFlagDefinition, AbstractInstance, AbstractNamedInstance, AbstractNamedModelInstance
Functional Interface:
This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.

@FunctionalInterface public interface IModelElementVisitable
Represents a model element that can be visited using the visitor pattern.

This interface supports traversal of model elements using implementations of IModelElementVisitor.

  • Method Summary

    Modifier and Type
    Method
    Description
    <CONTEXT, RESULT>
    RESULT
    accept(IModelElementVisitor<CONTEXT,RESULT> visitor, CONTEXT context)
    A visitor callback.
  • Method Details

    • accept

      <CONTEXT, RESULT> RESULT accept(@NonNull IModelElementVisitor<CONTEXT,RESULT> visitor, CONTEXT context)
      A visitor callback.
      Type Parameters:
      CONTEXT - the type of the context parameter
      RESULT - the type of the visitor result
      Parameters:
      visitor - the calling visitor
      context - a parameter used to pass contextual information between visitors
      Returns:
      the visitor result