org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables

## Class BinaryReflexiveTransitiveClosure

- java.lang.Object
- - org.eclipse.viatra.query.runtime.matchers.psystem.BasePConstraint
  - - org.eclipse.viatra.query.runtime.matchers.psystem.EnumerablePConstraint
    - - org.eclipse.viatra.query.runtime.matchers.psystem.KeyedEnumerablePConstraint<PQuery>
      - - org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.AbstractTransitiveClosure
        - - org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.BinaryReflexiveTransitiveClosure

- All Implemented Interfaces:
    IMultiQueryReference, IQueryReference, ITypeInfoProviderConstraint, PConstraint, PTraceable

      public class BinaryReflexiveTransitiveClosure
      extends AbstractTransitiveClosure

  For a binary base pattern over an enumerable universe type, computes the reflexive transitive closure (base)*
  Since:
    2.0

- - ### Field Summary

    - ### Fields inherited from class org.eclipse.viatra.query.runtime.matchers.psystem.KeyedEnumerablePConstraint

      `supplierKey`

    - ### Fields inherited from class org.eclipse.viatra.query.runtime.matchers.psystem.EnumerablePConstraint

      `variablesTuple`

    - ### Fields inherited from class org.eclipse.viatra.query.runtime.matchers.psystem.BasePConstraint

      `pBody`

    - ### Fields inherited from interface org.eclipse.viatra.query.runtime.matchers.psystem.PConstraint

      `COMPARE_BY_MONOTONOUS_ID`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `BinaryReflexiveTransitiveClosure(PBody pBody, Tuple variablesTuple, PQuery pattern, IInputKey universeType)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `checkSanity()`
    `IInputKey` | `getUniverseType()` Returns the type whose instances should be returned as 0-long paths.
    `protected java.lang.String` | `keyToString()`

    - ### Methods inherited from class org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.AbstractTransitiveClosure

      `getImpliedJudgements, getReferredQuery`

    - ### Methods inherited from class org.eclipse.viatra.query.runtime.matchers.psystem.KeyedEnumerablePConstraint

      `getSupplierKey, toStringRestRest`

    - ### Methods inherited from class org.eclipse.viatra.query.runtime.matchers.psystem.EnumerablePConstraint

      `doReplaceVariable, getDeducedVariables, getVariableInTuple, getVariablesTuple, toStringRest`

    - ### Methods inherited from class org.eclipse.viatra.query.runtime.matchers.psystem.BasePConstraint

      `delete, getAffectedVariables, getBody, getFunctionalDependencies, getMonotonousID, getPSystem, replaceVariable, toString`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

    - ### Methods inherited from interface org.eclipse.viatra.query.runtime.matchers.psystem.IQueryReference

      `getReferredQueries`

    - ### Methods inherited from interface org.eclipse.viatra.query.runtime.matchers.psystem.PConstraint

      `delete, getAffectedVariables, getBody, getDeducedVariables, getFunctionalDependencies, getMonotonousID, replaceVariable`

- - ### Constructor Detail

    - #### BinaryReflexiveTransitiveClosure

          public BinaryReflexiveTransitiveClosure(PBody pBody,
                                                  Tuple variablesTuple,
                                                  PQuery pattern,
                                                  IInputKey universeType)

  - ### Method Detail

    - #### keyToString

          protected java.lang.String keyToString()

      Specified by:
        `keyToString` in class `KeyedEnumerablePConstraint<PQuery>`

    - #### getUniverseType

          public IInputKey getUniverseType()

      Returns the type whose instances should be returned as 0-long paths.
      Since:
        2.0

    - #### checkSanity

          public void checkSanity()

      Specified by:
        `checkSanity` in interface `PConstraint`
      Overrides:
        `checkSanity` in class `BasePConstraint`