com.gu

json

package json

Visibility
  1. Public
  2. All

Type Members

  1. case class Cursor[J](focus: J, path: Path[J])(implicit J: JsonLike[J]) extends Product with Serializable

    Represents a position within a JSON structure, comprising a value under the cursor (the focus) and a context.

  2. trait CursorArrow[J] extends AnyRef

  3. trait CursorArrowSyntax extends AnyRef

  4. case class CursorFailure[J](at: Cursor[J], msg: String) extends Product with Serializable

    Data type representing the position of the cursor before the failed action, with a message describing the action that failed.

  5. trait JValueSyntax extends AnyRef

  6. trait JsonLike[J] extends AnyRef

    Typeclass for a data structure representing an AST for JSON

  7. class JsonLikeLaws[J] extends AnyRef

  8. trait PStateSyntax extends AnyRef

Value Members

  1. object Cursor extends Serializable

  2. object CursorArrow

  3. object CursorArrowSyntax extends CursorArrowSyntax

  4. object CursorArrows

  5. object CursorState

    Represents a transition, which may succeed or fail, from a cursor, to an updated cursor together with a value: JCursor => Option[(JCursor, A)]

    Represents a transition, which may succeed or fail, from a cursor, to an updated cursor together with a value: JCursor => Option[(JCursor, A)]

    Generally, movement commands return the new focus as the value, for convenience, e.g.

    for (results <- field("results")) ...

    But you may also program entirely in imperative commands, ignoring the returned values, e.g.

    for (_ <- field("uselessData"); _ <- deleteGoUp) yield ()

    In that case, consider instead:

    field("uselessData") >> deleteGoUp

  6. object J

  7. object JValueSyntax extends JValueSyntax

  8. object JsonLike

  9. object Lenses

  10. object PStateSyntax extends PStateSyntax

  11. package syntax

Ungrouped