cascading.flow.planner.iso.expression

## Class ScopeExpression

- java.lang.Object
- - cascading.flow.planner.iso.expression.ScopeExpression

- All Implemented Interfaces:
    Expression<Scope>
  Direct Known Subclasses:
    JoinEdgesSameSourceScopeExpression, OrdinalScopeExpression, PathScopeExpression

      public abstract class ScopeExpression
      extends java.lang.Object
      implements Expression<Scope>

  If ScopeExpression is the only edge, the `ScopeExpression.Applies` enum will apply, otherwise the number of edges on the target graph must match the number of edges in the expression.

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static class` | `ScopeExpression.Applies`

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static PathScopeExpression` | `ALL` Where this expression applies between ALL edges between two nodes.
    `static PathScopeExpression` | `ANY` Where this expression applies between ANY edge between two nodes.
    `protected ScopeExpression.Applies` | `applies`
    `protected boolean` | `capture`
    `static PathScopeExpression` | `EACH`
    `static PathScopeExpression` | `NO_CAPTURE` Match the edge, but do not capture it.

  - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `protected` | `ScopeExpression()`
    `` | `ScopeExpression(boolean capture, ScopeExpression.Applies applies)`
    `protected` | `ScopeExpression(ScopeExpression.Applies applies)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `acceptsAll()` True if there is at least one edge between the candidate nodes.
    `boolean` | `appliesToAllPaths()` This match must apply to all the edges between the two candidate nodes for the match to be true.
    `boolean` | `appliesToAnyPath()` This match must apply to at least one edge between the two candidate nodes for the match to be true.
    `boolean` | `appliesToEachPath()` This match is applied to each edge, at least one edge between the two candidate nodes must apply for the match to be true.
    `ScopeExpression.Applies` | `getApplies()`
    `boolean` | `isCapture()`
    `java.lang.String` | `toString()`

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

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

    - ### Methods inherited from interface cascading.flow.planner.iso.expression.Expression

      `applies`

- - ### Field Detail

    - #### ANY

          public static final PathScopeExpression ANY

      Where this expression applies between ANY edge between two nodes.

    - #### ALL

          public static final PathScopeExpression ALL

      Where this expression applies between ALL edges between two nodes.

    - #### EACH

          public static final PathScopeExpression EACH

    - #### NO_CAPTURE

          public static final PathScopeExpression NO_CAPTURE

      Match the edge, but do not capture it. Only works if the edge matched in the contracted graph is exactly present in the original graph. If the edge is a contraction of a more complex path, the edges/path won't be discarded.

    - #### capture

          protected boolean capture

    - #### applies

          protected ScopeExpression.Applies applies

  - ### Constructor Detail

    - #### ScopeExpression

          protected ScopeExpression()

    - #### ScopeExpression

          protected ScopeExpression(ScopeExpression.Applies applies)

    - #### ScopeExpression

          public ScopeExpression(boolean capture,
                         ScopeExpression.Applies applies)

  - ### Method Detail

    - #### isCapture

          public boolean isCapture()

    - #### appliesToAllPaths

          public boolean appliesToAllPaths()

      This match must apply to all the edges between the two candidate nodes for the match to be true.

    - #### appliesToAnyPath

          public boolean appliesToAnyPath()

      This match must apply to at least one edge between the two candidate nodes for the match to be true.

      The first to apply is captured.

    - #### appliesToEachPath

          public boolean appliesToEachPath()

      This match is applied to each edge, at least one edge between the two candidate nodes must apply for the match to be true.

      Each edge that applies is captured.

    - #### acceptsAll

          public boolean acceptsAll()

      True if there is at least one edge between the candidate nodes.

    - #### getApplies

          public ScopeExpression.Applies getApplies()

    - #### toString

          public java.lang.String toString()

      Overrides:
        `toString` in class `java.lang.Object`

Copyright © 2007-2015 Xplenty, Inc. All Rights Reserved.