name: PropertyPathInterface
class_comment: null
dependencies: []
properties: []
methods:
- name: __toString
  visibility: public
  parameters: []
  comment: '# * A sequence of property names or array indices.

    # *

    # * @author Bernhard Schussek <bschussek@gmail.com>

    # *

    # * @extends \Traversable<int, string>

    # */

    # interface PropertyPathInterface extends \Traversable, \Stringable

    # {

    # /**

    # * Returns the string representation of the property path.'
- name: getLength
  visibility: public
  parameters: []
  comment: '# * Returns the length of the property path, i.e. the number of elements.'
- name: getParent
  visibility: public
  parameters: []
  comment: '# * Returns the parent property path.

    # *

    # * The parent property path is the one that contains the same items as

    # * this one except for the last one.

    # *

    # * If this property path only contains one item, null is returned.'
- name: getElements
  visibility: public
  parameters: []
  comment: '# * Returns the elements of the property path as array.

    # *

    # * @return list<string>'
- name: getElement
  visibility: public
  parameters:
  - name: index
  comment: '# * Returns the element at the given index in the property path.

    # *

    # * @param int $index The index key

    # *

    # * @throws Exception\OutOfBoundsException If the offset is invalid'
- name: isProperty
  visibility: public
  parameters:
  - name: index
  comment: '# * Returns whether the element at the given index is a property.

    # *

    # * @param int $index The index in the property path

    # *

    # * @throws Exception\OutOfBoundsException If the offset is invalid'
- name: isIndex
  visibility: public
  parameters:
  - name: index
  comment: '# * Returns whether the element at the given index is an array index.

    # *

    # * @param int $index The index in the property path

    # *

    # * @throws Exception\OutOfBoundsException If the offset is invalid'
- name: isNullSafe
  visibility: public
  parameters:
  - name: index
  comment: '# * Returns whether the element at the given index is null safe.'
traits: []
interfaces: []