Packages

object JsonPath

An extremely small subset of JSONPath spec (@see https://goessner.net/articles/JsonPath/index.html)

It meant only to match output of json-schema-validator library and be immediately transformed into Pointer, which is a common format for schema-ddl

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. JsonPath
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. sealed trait Cursor extends AnyRef

Value Members

  1. val CurrentChar: Char
  2. val IndexStart: Char
  3. val IndexStop: Char
  4. val RootChar: Char
  5. val SpecialChars: Set[Char]
  6. val current: Parser[Cursor]
  7. val down: Parser[Down]
  8. val index: Parser[Index]
  9. val jsonPath: Parser[NonEmptyList[Cursor]]
  10. val operator: Parser[NonEmptyList[Cursor]]
  11. def parse(str: String): Either[String, NonEmptyList[Cursor]]
  12. val root: Parser[Cursor]
  13. def toPointer(jsonPath: NonEmptyList[Cursor]): Either[SchemaPointer, SchemaPointer]

    Try to convert to Pointer.SchemaPointer.

    Try to convert to Pointer.SchemaPointer. We're interested only in SchemaPointer because JsonPath is used only within SelfSyntaxChecker, which works only with schemas

    jsonPath

    parsed minimal JSONPath string

    returns

    either object with same semantics as Pointer.parseSchemaPointer - in case of unexpected schema property it fallsback to DownField, which will work out as a pointer, but can be invalid semantically

  14. object Cursor