Move the cursor to the given sibling field in a JSON object (alias for field
).
Move the cursor down to a JSON object at the given field (alias for downField
).
Move the cursor left in a JSON array the given number of times.
Move the cursor left in a JSON array the given number of times. A negative value will move the cursor right (alias for leftN
).
Move the cursor down to a JSON array at the first element satisfying the given predicate (alias for downAt
).
Move the cursor right in a JSON array the given number of times.
Move the cursor right in a JSON array the given number of times. A negative value will move the cursor left (alias for rightN
).
Move the cursor right in a JSON array until the given predicate matches the focus (alias for rightAt
).
Set the focus to the given value (alias for set
).
Move the cursor down to a JSON array at the given index (alias for downN
).
Update the focus with the given function in a functor (alias for withFocusM
).
Update the focus with the given function (alias for withFocus
).
Move the cursor left in a JSON array until the given predicate matches the focus (alias for leftAt
).
Move the cursor down to a JSON array at the first element (alias for downArray
).
Attempts to decode this cursor focus value to another data type.
Attempts to decode this cursor focus value to another data type.
Alias for jdecode
.
Deletes the JSON value at focus and moves up to parent (alias for deleteGoParent
).
Deletes the JSON value at focus and moves to the given sibling field in a JSON object.
Deletes the JSON value at focus and moves to the first in a JSON array.
Deletes the JSON value at focus and moves to the last in a JSON array.
Deletes the JSON value at focus and moves to the left in a JSON array.
Deletes the JSON value at focus and moves up to parent (alias for unary_!
).
Deletes the JSON value at focus and moves to the right in a JSON array.
Deletes all JSON values to left of focus in a JSON array.
Deletes all JSON values to right of focus in a JSON array.
Move the cursor down to a JSON array at the first element (alias for \\
).
Move the cursor down to a JSON array at the first element satisfying the given predicate (alias for -\
).
Move the cursor down to a JSON object at the given field (alias for --\
).
Move the cursor down to a JSON array at the given index (alias for =\
).
Move the cursor to the given sibling field in a JSON object (alias for --
).
All field names in a JSON object.
All field names in a JSON object.
Find the first element at or to the right of focus in a JSON array where the given predicate matches the focus.
Move the cursor to the first in a JSON array.
Return the current focus.
Attempts to move down onto a field name
and decode the focus.
Attempts to decode this cursor focus value to another data type.
Move the cursor to the last in a JSON array.
Move the cursor left in a JSON array.
Move the cursor left in a JSON array until the given predicate matches the focus (alias for ?<-:
).
Move the cursor left in a JSON array the given number of times.
Move the cursor left in a JSON array the given number of times. A negative value will move the cursor right (alias for -<-:
).
Return the values left of focus in a JSON array.
Move the cursor right in a JSON array.
Move the cursor right in a JSON array until the given predicate matches the focus (alias for :->?
).
Move the cursor right in a JSON array the given number of times.
Move the cursor right in a JSON array the given number of times. A negative value will move the cursor left (alias for :->-
).
Return the values right of focus in a JSON array.
Set the focus to the given value (alias for :=
).
Set the values to the left of focus in a JSON array.
Set the values to the right of focus in a JSON array.
Traverse taking op
at each step, performing f
on the current cursor
and accumulate X through DecodeResult.
Traverse taking op
at each step, performing f
on the current cursor
and accumulate X through DecodeResult.
This operation does not consume stack at each step, so is safe to work with large structures (that is compared with recursive flatMap).
Traverse until either f
does not return a cursor or the cursor did not succeed,
accumulating X at each sterp
Traverse until f
returns a cursor that did not succeed,
accumulating X at each step
Deletes the JSON value at focus and moves up to parent (alias for deleteGoParent
).
Unapplies the cursor to the top-level parent (alias for undo
).
Unapplies the cursor to the top-level parent (alias for unary_-
).
Move the cursor up one step to the parent context.
Update the focus with the given function (alias for >->
).
Update the focus with the given function in a functor (alias for >-->
).