Package io.vertx.rxjava3.core.json.pointer

## Class JsonPointerIterator

- java.lang.Object
- - io.vertx.rxjava3.core.json.pointer.JsonPointerIterator

- All Implemented Interfaces:
    `io.vertx.lang.rx.RxDelegate`

      public class JsonPointerIterator
      extends Object
      implements io.vertx.lang.rx.RxDelegate

  The JsonPointerIterator is used by the read/write algorithms of the `JsonPointer` to read/write the querying data structure
  Every method takes the currentValue as parameter, representing the actual value held by the query algorithm.
  Implementations of this interface should be stateless, so they can be reused
  You can implement this interface to query the structure you want using json pointers

  NOTE: This class has been automatically generated from the `original` non RX-ified interface using Vert.x codegen.

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `static io.vertx.lang.rx.TypeArg<JsonPointerIterator>` | `__TYPE_ARG` |
    `static JsonPointerIterator` | `JSON_ITERATOR` | Instance of a JsonPointerIterator to query Vert.x Json structures

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `JsonPointerIterator​(JsonPointerIterator delegate)` |
    `JsonPointerIterator​(Object delegate)` |

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `boolean` | `appendArrayElement​(Object currentValue, Object value)` | Append array element
    `boolean` | `equals​(Object o)` |
    `Object` | `getArrayElement​(Object currentValue, int i)` | Move the iterator the array element at specified index
    `JsonPointerIterator` | `getDelegate()` |
    `Object` | `getObjectParameter​(Object currentValue, String key, boolean createOnMissing)` | Returns the object parameter with specified key.
    `int` | `hashCode()` |
    `boolean` | `isArray​(Object currentValue)` |
    `boolean` | `isNull​(Object currentValue)` |
    `boolean` | `isObject​(Object currentValue)` |
    `static JsonPointerIterator` | `newInstance​(JsonPointerIterator arg)` |
    `boolean` | `objectContainsKey​(Object currentValue, String key)` |
    `String` | `toString()` |
    `boolean` | `writeArrayElement​(Object currentValue, int i, Object value)` | Write array element at specified index
    `boolean` | `writeObjectParameter​(Object currentValue, String key, Object value)` | Write object parameter at specified key

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

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

- - ### Field Detail

    - #### __TYPE_ARG

          public static final io.vertx.lang.rx.TypeArg<JsonPointerIterator> __TYPE_ARG

    - #### JSON_ITERATOR

          public static final JsonPointerIterator JSON_ITERATOR

      Instance of a JsonPointerIterator to query Vert.x Json structures

  - ### Constructor Detail

    - #### JsonPointerIterator

          public JsonPointerIterator​(JsonPointerIterator delegate)

    - #### JsonPointerIterator

          public JsonPointerIterator​(Object delegate)

  - ### Method Detail

    - #### toString

          public String toString()

      Overrides:
        `toString` in class `Object`

    - #### equals

          public boolean equals​(Object o)

      Overrides:
        `equals` in class `Object`

    - #### hashCode

          public int hashCode()

      Overrides:
        `hashCode` in class `Object`

    - #### getDelegate

          public JsonPointerIterator getDelegate()

      Specified by:
        `getDelegate` in interface `io.vertx.lang.rx.RxDelegate`

    - #### isObject

          public boolean isObject​(Object currentValue)

      Parameters:
        `currentValue` -
      Returns:
        `true` if the current value is a queryable object

    - #### isArray

          public boolean isArray​(Object currentValue)

      Parameters:
        `currentValue` -
      Returns:
        `true` if the current value is a queryable array

    - #### isNull

          public boolean isNull​(Object currentValue)

      Parameters:
        `currentValue` -
      Returns:
        `true` if the current value is null/empty

    - #### objectContainsKey

          public boolean objectContainsKey​(Object currentValue,
                                           String key)

      Parameters:
        `currentValue` -
        `key` - object key
      Returns:
        `true` if current value is a queryable object that contains the specified key

    - #### getObjectParameter

          public Object getObjectParameter​(Object currentValue,
                                           String key,
                                           boolean createOnMissing)

      Returns the object parameter with specified key.
      Parameters:
        `currentValue` -
        `key` - object key
        `createOnMissing` - If the current value is an object that doesn't contain the key, put an empty object at provided key
      Returns:
        the requested object parameter, or null if the method was not able to find it

    - #### getArrayElement

          public Object getArrayElement​(Object currentValue,
                                        int i)

      Move the iterator the array element at specified index
      Parameters:
        `currentValue` -
        `i` - array index
      Returns:
        the request array element, or null if the method was not able to find it

    - #### writeObjectParameter

          public boolean writeObjectParameter​(Object currentValue,
                                              String key,
                                              Object value)

      Write object parameter at specified key
      Parameters:
        `currentValue` -
        `key` -
        `value` -
      Returns:
        true if the operation is successful

    - #### writeArrayElement

          public boolean writeArrayElement​(Object currentValue,
                                           int i,
                                           Object value)

      Write array element at specified index
      Parameters:
        `currentValue` -
        `i` -
        `value` -
      Returns:
        true if the operation is successful

    - #### appendArrayElement

          public boolean appendArrayElement​(Object currentValue,
                                            Object value)

      Append array element
      Parameters:
        `currentValue` -
        `value` -
      Returns:
        true if the operation is successful

    - #### newInstance

          public static JsonPointerIterator newInstance​(JsonPointerIterator arg)