org.apache.tinkerpop.gremlin.process.traversal.step.util

## Class EmptyPath

- java.lang.Object
- - org.apache.tinkerpop.gremlin.process.traversal.step.util.EmptyPath

- All Implemented Interfaces:
    Serializable, Cloneable, Iterable<Object>, Path

      public final class EmptyPath
      extends Object
      implements Path, Serializable

  Author:
    Marko A. Rodriguez (http://markorodriguez.com)
  See Also:
    Serialized Form

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from interface org.apache.tinkerpop.gremlin.process.traversal.Path

      `Path.Exceptions`

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `EmptyPath` | `clone()`
    `boolean` | `equals(Object object)`
    `Path` | `extend(Object object, Set<String> labels)` Add a new step to the path with an object and any number of associated labels.
    `Path` | `extend(Set<String> labels)` Add labels to the head of the path.
    `<A> A` | `get(int index)` Get the object associated with the specified index into the path.
    `<A> A` | `get(String label)` Get the object associated with the particular label of the path.
    `int` | `hashCode()`
    `boolean` | `hasLabel(String label)` Return true if the path has the specified label, else return false.
    `static Path` | `instance()`
    `boolean` | `isSimple()` Determines whether the path is a simple or not.
    `List<Set<String>>` | `labels()` An ordered list of the labels associated with the path The set of labels for a particular step are ordered by the order in which `Path.extend(Object, Set)` was called.
    `List<Object>` | `objects()` An ordered list of the objects in the path.
    `Path` | `retract(Set<String> labels)` Remove labels from path.
    `int` | `size()` Get the number of step in the path.
    `String` | `toString()`

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

      `finalize, getClass, notify, notifyAll, wait, wait, wait`

    - ### Methods inherited from interface org.apache.tinkerpop.gremlin.process.traversal.Path

      `forEach, get, head, isEmpty, iterator, popEquals, stream, subPath`

    - ### Methods inherited from interface java.lang.Iterable

      `forEach, spliterator`

- - ### Method Detail

    - #### size

          public int size()

      Description copied from interface: `Path`
      Get the number of step in the path.
      Specified by:
        `size` in interface `Path`
      Returns:
        the size of the path

    - #### extend

          public Path extend(Object object,
                             Set<String> labels)

      Description copied from interface: `Path`
      Add a new step to the path with an object and any number of associated labels.
      Specified by:
        `extend` in interface `Path`
      Parameters:
        `object` - the new head of the path
        `labels` - the labels at the head of the path
      Returns:
        the extended path

    - #### extend

          public Path extend(Set<String> labels)

      Description copied from interface: `Path`
      Add labels to the head of the path.
      Specified by:
        `extend` in interface `Path`
      Parameters:
        `labels` - the labels at the head of the path
      Returns:
        the path with added labels

    - #### retract

          public Path retract(Set<String> labels)

      Description copied from interface: `Path`
      Remove labels from path.
      Specified by:
        `retract` in interface `Path`
      Parameters:
        `labels` - the labels to remove
      Returns:
        the path with removed labels

    - #### get

          public <A> A get(String label)

      Description copied from interface: `Path`
      Get the object associated with the particular label of the path. If the path as multiple labels of the type, then return a `List` of those objects.
      Specified by:
        `get` in interface `Path`
      Type Parameters:
        `A` - the type of the object associated with the label
      Parameters:
        `label` - the label of the path
      Returns:
        the object associated with the label of the path

    - #### get

          public <A> A get(int index)

      Description copied from interface: `Path`
      Get the object associated with the specified index into the path.
      Specified by:
        `get` in interface `Path`
      Type Parameters:
        `A` - the type of the object associated with the index
      Parameters:
        `index` - the index of the path
      Returns:
        the object associated with the index of the path

    - #### hasLabel

          public boolean hasLabel(String label)

      Description copied from interface: `Path`
      Return true if the path has the specified label, else return false.
      Specified by:
        `hasLabel` in interface `Path`
      Parameters:
        `label` - the label to search for
      Returns:
        true if the label exists in the path

    - #### objects

          public List<Object> objects()

      Description copied from interface: `Path`
      An ordered list of the objects in the path.
      Specified by:
        `objects` in interface `Path`
      Returns:
        the objects of the path

    - #### labels

          public List<Set<String>> labels()

      Description copied from interface: `Path`
      An ordered list of the labels associated with the path The set of labels for a particular step are ordered by the order in which `Path.extend(Object, Set)` was called.
      Specified by:
        `labels` in interface `Path`
      Returns:
        the labels of the path

    - #### isSimple

          public boolean isSimple()

      Description copied from interface: `Path`
      Determines whether the path is a simple or not. A simple path has no cycles and thus, no repeated objects.
      Specified by:
        `isSimple` in interface `Path`
      Returns:
        Whether the path is simple or not

    - #### clone

          public EmptyPath clone()

      Specified by:
        `clone` in interface `Path`
      Overrides:
        `clone` in class `Object`

    - #### instance

          public static Path instance()

    - #### hashCode

          public int hashCode()

      Overrides:
        `hashCode` in class `Object`

    - #### equals

          public boolean equals(Object object)

      Overrides:
        `equals` in class `Object`

    - #### toString

          public String toString()

      Overrides:
        `toString` in class `Object`

Copyright © 2013–2022 Apache Software Foundation. All rights reserved.