org.eclipse.viatra.query.runtime.rete.recipes

## Interface ReteNodeRecipe

- All Superinterfaces:
    org.eclipse.emf.ecore.EObject, org.eclipse.emf.common.notify.Notifier
  All Known Subinterfaces:
    AggregatorIndexerRecipe, AlphaRecipe, AntiJoinRecipe, BetaRecipe, CheckRecipe, ConstantRecipe, CountAggregatorRecipe, DiscriminatorBucketRecipe, DiscriminatorDispatcherRecipe, EqualityFilterRecipe, EvalRecipe, ExistenceJoinRecipe, ExpressionEnforcerRecipe, FilterRecipe, IndexerBasedAggregatorRecipe, IndexerRecipe, InequalityFilterRecipe, InputFilterRecipe, InputRecipe, JoinRecipe, MultiParentNodeRecipe, ProductionRecipe, ProjectionIndexerRecipe, SemiJoinRecipe, SingleColumnAggregatorRecipe, SingleParentNodeRecipe, TransitiveClosureRecipe, TransparentRecipe, TrimmerRecipe, UniquenessEnforcerRecipe
  All Known Implementing Classes:
    AggregatorIndexerRecipeImpl, AlphaRecipeImpl, AntiJoinRecipeImpl, BetaRecipeImpl, CheckRecipeImpl, ConstantRecipeImpl, CountAggregatorRecipeImpl, DiscriminatorBucketRecipeImpl, DiscriminatorDispatcherRecipeImpl, EqualityFilterRecipeImpl, EvalRecipeImpl, ExistenceJoinRecipeImpl, ExpressionEnforcerRecipeImpl, FilterRecipeImpl, IndexerBasedAggregatorRecipeImpl, IndexerRecipeImpl, InequalityFilterRecipeImpl, InputFilterRecipeImpl, InputRecipeImpl, JoinRecipeImpl, MultiParentNodeRecipeImpl, ProductionRecipeImpl, ProjectionIndexerRecipeImpl, ReteNodeRecipeImpl, SemiJoinRecipeImpl, SingleColumnAggregatorRecipeImpl, SingleParentNodeRecipeImpl, TransitiveClosureRecipeImpl, TransparentRecipeImpl, TrimmerRecipeImpl, UniquenessEnforcerRecipeImpl

      public interface ReteNodeRecipe
      extends org.eclipse.emf.ecore.EObject

  A representation of the model object 'Rete Node Recipe'. Abstract base class for model elements that represent "Rete node recipes", that is DTOs that carry information for Rete network construction.
  See Also:
    `RecipesPackage.getReteNodeRecipe()`
  No Implement:

    The following features are supported:

    - `Trace Info`
    - `Equivalence Class IDs`
  Generated:
  Model:
    abstract="true"

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `int` | `getArity()` The width of tuples contained by this node.
    `org.eclipse.emf.common.util.EList<java.lang.Long>` | `getEquivalenceClassIDs()` Returns the value of the 'Equivalence Class IDs' attribute list.
    `java.lang.String` | `getTraceInfo()` Returns the value of the 'Trace Info' attribute.
    `void` | `setTraceInfo(java.lang.String value)` Sets the value of the '`Trace Info`' attribute.

    - ### Methods inherited from interface org.eclipse.emf.ecore.EObject

      `eAllContents, eClass, eContainer, eContainingFeature, eContainmentFeature, eContents, eCrossReferences, eGet, eGet, eInvoke, eIsProxy, eIsSet, eResource, eSet, eUnset`

    - ### Methods inherited from interface org.eclipse.emf.common.notify.Notifier

      `eAdapters, eDeliver, eNotify, eSetDeliver`

- - ### Method Detail

    - #### getTraceInfo

          java.lang.String getTraceInfo()

      Returns the value of the 'Trace Info' attribute. Temporary construct for storing traceability information.
      Returns:
        the value of the 'Trace Info' attribute.
      See Also:
        `setTraceInfo(String)`, `RecipesPackage.getReteNodeRecipe_TraceInfo()`
      Generated:
      Model:
        unique="false"

    - #### setTraceInfo

          void setTraceInfo(java.lang.String value)

      Sets the value of the '`Trace Info`' attribute.
      Parameters:
        `value` - the new value of the 'Trace Info' attribute.
      See Also:
        `getTraceInfo()`
      Generated:

    - #### getEquivalenceClassIDs

          org.eclipse.emf.common.util.EList<java.lang.Long> getEquivalenceClassIDs()

      Returns the value of the 'Equivalence Class IDs' attribute list. The list contents are of type `Long`. If two recipes were found equivalent, a matching equivalence ID can be assigned to them by `RecipeRecognizer`. If two recipes share (at least one) equivalence ID, they are known to be equivalent.

      A difference in this attribute only does not preclude two recipe elements to be considered equal. If they are shown to be equivalent using deeper analysis, equivalence ids can be set so that the equivalence is recognized more easily the next time.

      Returns:
        the value of the 'Equivalence Class IDs' attribute list.
      Since:
        1.3
      See Also:
        `RecipesPackage.getReteNodeRecipe_EquivalenceClassIDs()`
      Generated:
      Model:
        transient="true"

    - #### getArity

          int getArity()

      The width of tuples contained by this node.
      Generated:
      Model:
        kind="operation" unique="false" annotation="http://www.eclipse.org/emf/2002/GenModel body='throw new <%java.lang.UnsupportedOperationException%>();'"