abstract class Cursor extends GenericCursor[Cursor]
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
- Alphabetic
- By Inheritance
- Cursor
- GenericCursor
- Serializable
- Serializable
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
- new Cursor()
Type Members
-
type
Focus[x] = x
The context that the cursor is available in.
The context that the cursor is available in.
- Definition Classes
- Cursor → GenericCursor
-
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
- Cursor → GenericCursor
-
type
Result = Option[Cursor]
The type returned by navigation and modifications operations.
The type returned by navigation and modifications operations.
- Definition Classes
- Cursor → GenericCursor
Abstract Value Members
-
abstract
def
context: List[Context]
Return the current context of the focus.
-
abstract
def
delete: Result
Delete the focus and move to its parent.
Delete the focus and move to its parent.
- Definition Classes
- GenericCursor
-
abstract
def
deleteGoField(k: String): Result
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
- GenericCursor
-
abstract
def
deleteGoFirst: Result
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
- GenericCursor
-
abstract
def
deleteGoLast: Result
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
- GenericCursor
-
abstract
def
deleteGoLeft: Result
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
- GenericCursor
-
abstract
def
deleteGoRight: Result
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
- GenericCursor
-
abstract
def
deleteLefts: Result
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
- GenericCursor
-
abstract
def
deleteRights: Result
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
- GenericCursor
-
abstract
def
field(k: String): Result
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
- GenericCursor
-
abstract
def
first: Result
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
- GenericCursor
-
abstract
def
focus: Focus[Json]
The current location in the document.
The current location in the document.
- Definition Classes
- GenericCursor
-
abstract
def
last: Result
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
- GenericCursor
-
abstract
def
left: Result
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
- GenericCursor
-
abstract
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
- GenericCursor
-
abstract
def
right: Result
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
- GenericCursor
-
abstract
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
- GenericCursor
-
abstract
def
setLefts(x: List[Json]): Result
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
- GenericCursor
-
abstract
def
setRights(x: List[Json]): Result
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
- GenericCursor
-
abstract
def
up: Result
Move the focus to the parent.
Move the focus to the parent.
- Definition Classes
- GenericCursor
-
abstract
def
withFocus(f: (Json) ⇒ Json): Cursor
Modify the focus using the given function.
Modify the focus using the given function.
- Definition Classes
- GenericCursor
-
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
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
as[A](implicit d: Decoder[A]): Decoder.Result[A]
Attempt to decode the focus as an
A
.Attempt to decode the focus as an
A
.- Definition Classes
- Cursor → GenericCursor
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
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
- Cursor → GenericCursor
-
final
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
- Cursor → GenericCursor
-
final
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
- Cursor → GenericCursor
-
final
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
- Cursor → GenericCursor
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
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
- Cursor → GenericCursor
-
final
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
- Cursor → GenericCursor
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
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
- Cursor → GenericCursor
-
final
def
get[A](k: String)(implicit d: Decoder[A]): Decoder.Result[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
- Cursor → GenericCursor
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
-
def
getOrElse[A](k: String)(fallback: ⇒ A)(implicit d: Decoder[A]): Decoder.Result[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
. If the fieldk
is missing, then use thefallback
instead.- Definition Classes
- GenericCursor
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
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
- Cursor → GenericCursor
-
final
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
- Cursor → GenericCursor
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
-
final
def
replay(history: List[HistoryOp]): Option[Cursor]
Replay history (a list of operations in reverse "chronological" order) against this cursor.
Replay history (a list of operations in reverse "chronological" order) against this cursor.
- Definition Classes
- Cursor → GenericCursor
-
final
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
- Cursor → GenericCursor
-
final
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
- Cursor → GenericCursor
-
final
def
set(j: Json): Cursor
Replace the focus.
Replace the focus.
- Definition Classes
- GenericCursor
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
final
def
top: Json
Return to the root of the document.
Return to the root of the document.
- Definition Classes
- Cursor → GenericCursor
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )