io.circe

Cursor

abstract class Cursor extends CursorOperations

A zipper that represents a position in a JSON value and supports navigation around the JSON value.

The focus represents the current position of the cursor; it may be updated with withFocus or changed using the navigation methods left, right, etc.

See also

GenericCursor

Linear Supertypes
CursorOperations, GenericCursor[Cursor], AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. Cursor
  2. CursorOperations
  3. GenericCursor
  4. AnyRef
  5. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Instance Constructors

  1. new Cursor()

Type Members

  1. type Focus[x] = x

    The context that the cursor is available in.

    The context that the cursor is available in.

    Definition Classes
    CursorOperations → GenericCursor
  2. type M[x[_]] = Functor[x]

    The type class including the operations needed for withFocusM.

    The type class including the operations needed for withFocusM.

    Definition Classes
    CursorOperations → GenericCursor
  3. type Result = Option[Cursor]

    The type returned by navigation and modifications operations.

    The type returned by navigation and modifications operations.

    Definition Classes
    CursorOperations → GenericCursor

Abstract Value Members

  1. abstract def context: List[Context]

    Return the current context of the focus.

  2. abstract def delete: Result

    Delete the focus and move to its parent.

    Delete the focus and move to its parent.

    Definition Classes
    GenericCursor
  3. abstract def focus: Focus[Json]

    The current location in the document.

    The current location in the document.

    Definition Classes
    GenericCursor
  4. abstract def up: Result

    Move the focus to the parent.

    Move the focus to the parent.

    Definition Classes
    GenericCursor
  5. abstract def withFocus(f: (Json) ⇒ Json): Cursor

    Modify the focus using the given function.

    Modify the focus using the given function.

    Definition Classes
    GenericCursor
  6. abstract def withFocusM[F[_]](f: (Json) ⇒ F[Json])(implicit arg0: M[F]): F[Cursor]

    Modify the focus in a context using the given function.

    Modify the focus in a context using the given function.

    Definition Classes
    GenericCursor

Concrete Value Members

  1. final def !=(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  2. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  3. final def ##(): Int

    Definition Classes
    AnyRef → Any
  4. final def ==(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  5. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  6. def as[A](implicit d: Decoder[A]): Xor[DecodingFailure, A]

    Attempt to decode the focus as an A.

    Attempt to decode the focus as an A.

    Definition Classes
    CursorOperations → GenericCursor
  7. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  8. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  9. def deleteGoField(q: String): Option[Cursor]

    Delete the focus and move to the sibling with the given key in a JSON object.

    Delete the focus and move to the sibling with the given key in a JSON object.

    Definition Classes
    CursorOperations → GenericCursor
  10. def deleteGoFirst: Option[Cursor]

    Delete the focus and move to the first element in a JSON array.

    Delete the focus and move to the first element in a JSON array.

    Definition Classes
    CursorOperations → GenericCursor
  11. def deleteGoLast: Option[Cursor]

    Delete the focus and move to the last element in a JSON array.

    Delete the focus and move to the last element in a JSON array.

    Definition Classes
    CursorOperations → GenericCursor
  12. def deleteGoLeft: Option[Cursor]

    Delete the focus and move to the left in a JSON array.

    Delete the focus and move to the left in a JSON array.

    Definition Classes
    CursorOperations → GenericCursor
  13. def deleteGoRight: Option[Cursor]

    Delete the focus and move to the right in a JSON array.

    Delete the focus and move to the right in a JSON array.

    Definition Classes
    CursorOperations → GenericCursor
  14. def deleteLefts: Option[Cursor]

    Delete all values to the left of the focus in a JSON array.

    Delete all values to the left of the focus in a JSON array.

    Definition Classes
    CursorOperations → GenericCursor
  15. def deleteRights: Option[Cursor]

    Delete all values to the right of the focus in a JSON array.

    Delete all values to the right of the focus in a JSON array.

    Definition Classes
    CursorOperations → GenericCursor
  16. def downArray: Option[Cursor]

    If the focus is a JSON array, move to its first element.

    If the focus is a JSON array, move to its first element.

    Definition Classes
    CursorOperations → GenericCursor
  17. def downAt(p: (Json) ⇒ Boolean): Option[Cursor]

    If the focus is a JSON array, move to the first element that satisfies the given predicate.

    If the focus is a JSON array, move to the first element that satisfies the given predicate.

    Definition Classes
    CursorOperations → GenericCursor
  18. def downField(k: String): Option[Cursor]

    If the focus is a JSON object, move to the value of the given key.

    If the focus is a JSON object, move to the value of the given key.

    Definition Classes
    CursorOperations → GenericCursor
  19. def downN(n: Int): Option[Cursor]

    If the focus is a JSON array, move to the element at the given index.

    If the focus is a JSON array, move to the element at the given index.

    Definition Classes
    CursorOperations → GenericCursor
  20. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  21. def equals(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  22. def field(k: String): Option[Cursor]

    If the focus is a value in a JSON object, move to a sibling with the given key.

    If the focus is a value in a JSON object, move to a sibling with the given key.

    Definition Classes
    CursorOperations → GenericCursor
  23. def fieldSet: Option[Set[String]]

    If the focus is a JSON object, return its field names in a set.

    If the focus is a JSON object, return its field names in a set.

    Definition Classes
    CursorOperations → GenericCursor
  24. def fields: Option[List[String]]

    If the focus is a JSON object, return its field names in their original order.

    If the focus is a JSON object, return its field names in their original order.

    Definition Classes
    CursorOperations → GenericCursor
  25. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  26. def find(p: (Json) ⇒ Boolean): Option[Cursor]

    If the focus is an element in a JSON array, find the first element at or to its right that matches the given predicate.

    If the focus is an element in a JSON array, find the first element at or to its right that matches the given predicate.

    Definition Classes
    CursorOperations → GenericCursor
  27. def first: Option[Cursor]

    If the focus is an element in a JSON array, move to the first element.

    If the focus is an element in a JSON array, move to the first element.

    Definition Classes
    CursorOperations → GenericCursor
  28. def get[A](k: String)(implicit d: Decoder[A]): Xor[DecodingFailure, A]

    Attempt to decode the value at the given key in a JSON object as an A.

    Attempt to decode the value at the given key in a JSON object as an A.

    Definition Classes
    CursorOperations → GenericCursor
  29. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  30. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  31. def hcursor: HCursor

    Create an HCursor for this cursor in order to track history.

  32. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  33. def last: Option[Cursor]

    If the focus is an element in a JSON array, move to the last element.

    If the focus is an element in a JSON array, move to the last element.

    Definition Classes
    CursorOperations → GenericCursor
  34. def left: Option[Cursor]

    If the focus is an element in a JSON array, move to the left.

    If the focus is an element in a JSON array, move to the left.

    Definition Classes
    CursorOperations → GenericCursor
  35. def leftAt(p: (Json) ⇒ Boolean): Option[Cursor]

    If the focus is an element in a JSON array, move to the left until the given predicate matches the new focus.

    If the focus is an element in a JSON array, move to the left until the given predicate matches the new focus.

    Definition Classes
    CursorOperations → GenericCursor
  36. def leftN(n: Int): Option[Cursor]

    If the focus is an element in JSON array, move to the left the given number of times.

    If the focus is an element in JSON array, move to the left the given number of times.

    A negative value will move the cursor right.

    Definition Classes
    CursorOperations → GenericCursor
  37. def lefts: Option[List[Json]]

    If the focus is a JSON array, return the elements to the left.

    If the focus is a JSON array, return the elements to the left.

    Definition Classes
    CursorOperations → GenericCursor
  38. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  39. final def notify(): Unit

    Definition Classes
    AnyRef
  40. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  41. def right: Option[Cursor]

    If the focus is an element in a JSON array, move to the right.

    If the focus is an element in a JSON array, move to the right.

    Definition Classes
    CursorOperations → GenericCursor
  42. def rightAt(p: (Json) ⇒ Boolean): Option[Cursor]

    If the focus is an element in a JSON array, move to the right until the given predicate matches the new focus.

    If the focus is an element in a JSON array, move to the right until the given predicate matches the new focus.

    Definition Classes
    CursorOperations → GenericCursor
  43. def rightN(n: Int): Option[Cursor]

    If the focus is an element in JSON array, move to the right the given number of times.

    If the focus is an element in JSON array, move to the right the given number of times.

    A negative value will move the cursor left.

    Definition Classes
    CursorOperations → GenericCursor
  44. def rights: Option[List[Json]]

    If the focus is a JSON array, return the elements to the right.

    If the focus is a JSON array, return the elements to the right.

    Definition Classes
    CursorOperations → GenericCursor
  45. def set(j: Json): Cursor

    Replace the focus.

    Replace the focus.

    Definition Classes
    GenericCursor
  46. def setLefts(x: List[Json]): Option[Cursor]

    Replace all values to the left of the focus in a JSON array.

    Replace all values to the left of the focus in a JSON array.

    Definition Classes
    CursorOperations → GenericCursor
  47. def setRights(x: List[Json]): Option[Cursor]

    Replace all values to the right of the focus in a JSON array.

    Replace all values to the right of the focus in a JSON array.

    Definition Classes
    CursorOperations → GenericCursor
  48. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  49. def toString(): String

    Definition Classes
    AnyRef → Any
  50. def top: Json

    Return to the root of the document.

    Return to the root of the document.

    Definition Classes
    CursorOperations → GenericCursor
  51. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  52. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  53. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from CursorOperations

Inherited from GenericCursor[Cursor]

Inherited from AnyRef

Inherited from Any

Type members

Cursor fields and operations

Access and navigation

Modification

Array access

Object access

Array navigation

Object navigation

Array modification

Object modification

Decoding