Package org.eclipse.rdf4j.sail.shacl.ast.targets

## Class EffectiveTarget

- java.lang.Object
- - org.eclipse.rdf4j.sail.shacl.ast.targets.EffectiveTarget

-     public class EffectiveTarget
      extends Object

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class | Description
    --- | --- | ---
    `static class` | `EffectiveTarget.EffectiveTargetObject` |
    `static class` | `EffectiveTarget.Extend` |

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `EffectiveTarget​(ArrayDeque<org.eclipse.rdf4j.sail.shacl.ast.Targetable> chain, org.eclipse.rdf4j.sail.shacl.ast.Targetable optional, String targetVarPrefix, RdfsSubClassOfReasoner rdfsSubClassOfReasoner)` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `boolean` | `couldMatch​(ConnectionsGroup connectionsGroup)` |
    `PlanNode` | `extend​(PlanNode source, ConnectionsGroup connectionsGroup, ConstraintComponent.Scope scope, EffectiveTarget.Extend direction, boolean includePropertyShapeValues, Function<PlanNode,​PlanNode> filter)` |
    `PlanNode` | `getAllTargets​(ConnectionsGroup connectionsGroup, ConstraintComponent.Scope scope)` |
    `List<org.eclipse.rdf4j.sail.shacl.ast.StatementMatcher.Variable>` | `getAllTargetVariables()` |
    `PlanNode` | `getPlanNode​(ConnectionsGroup connectionsGroup, ConstraintComponent.Scope scope, boolean includeTargetsAffectedByRemoval, Function<PlanNode,​PlanNode> filter)` |
    `String` | `getQuery​(boolean includeOptional)` |
    `PlanNode` | `getTargetFilter​(ConnectionsGroup connectionsGroup, PlanNode parent)` |
    `org.eclipse.rdf4j.sail.shacl.ast.StatementMatcher.Variable` | `getTargetVar()` |

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

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

- - ### Constructor Detail

    - #### EffectiveTarget

          public EffectiveTarget​(ArrayDeque<org.eclipse.rdf4j.sail.shacl.ast.Targetable> chain,
                                 org.eclipse.rdf4j.sail.shacl.ast.Targetable optional,
                                 String targetVarPrefix,
                                 RdfsSubClassOfReasoner rdfsSubClassOfReasoner)

  - ### Method Detail

    - #### getTargetVar

          public org.eclipse.rdf4j.sail.shacl.ast.StatementMatcher.Variable getTargetVar()

    - #### extend

          public PlanNode extend​(PlanNode source,
                                 ConnectionsGroup connectionsGroup,
                                 ConstraintComponent.Scope scope,
                                 EffectiveTarget.Extend direction,
                                 boolean includePropertyShapeValues,
                                 Function<PlanNode,​PlanNode> filter)

    - #### couldMatch

          public boolean couldMatch​(ConnectionsGroup connectionsGroup)

      Returns:
        false if it is 100% sure that this will not match, else returns true

    - #### getAllTargets

          public PlanNode getAllTargets​(ConnectionsGroup connectionsGroup,
                                        ConstraintComponent.Scope scope)

    - #### getPlanNode

          public PlanNode getPlanNode​(ConnectionsGroup connectionsGroup,
                                      ConstraintComponent.Scope scope,
                                      boolean includeTargetsAffectedByRemoval,
                                      Function<PlanNode,​PlanNode> filter)

    - #### getTargetFilter

          public PlanNode getTargetFilter​(ConnectionsGroup connectionsGroup,
                                          PlanNode parent)

    - #### getQuery

          public String getQuery​(boolean includeOptional)

    - #### getAllTargetVariables

          public List<org.eclipse.rdf4j.sail.shacl.ast.StatementMatcher.Variable> getAllTargetVariables()