package json
Linear Supertypes
Ordering
- Alphabetic
- By Inheritance
Inherited
- json
- AnyRef
- Any
- Hide All
- Show All
Visibility
- Public
- All
Type Members
- case class After(after: String) extends TimePredicate with JPredicate with Product with Serializable
- case class And(and: List[JPredicate]) extends JPredicate with Product with Serializable
- abstract class BaseNumOp extends AnyRef
- case class Before(before: String) extends TimePredicate with JPredicate with Product with Serializable
- sealed abstract class ComparablePredicate extends JPredicate
- case class DiffEntry(path: List[String], lhs: Json, rhs: Json) extends Product with Serializable
- case class Eq(eq: Json) extends JPredicate with Product with Serializable
- case class Gt(gt: Json) extends ComparablePredicate with Product with Serializable
- case class Gte(gte: Json) extends ComparablePredicate with Product with Serializable
- case class JArrayFind(arrayFind: JPredicate) extends JPart with Product with Serializable
- case class JConstantExpression(const: Option[Json]) extends JExpression with Product with Serializable
- sealed trait JExpression extends AnyRef
Represents an operation given some input json.
Represents an operation given some input json. This is a recursive data structure, where we might for example evaluate two different JPath locations from a json object to produce a result
e.g. { x : 1 y : 2 } could be the input for an expression which evaluates 'sum' on the jpaths 'x' and 'y' to produce the json number 3
- case class JField(name: String) extends JPart with Product with Serializable
- case class JFilter(field: String, predicate: JPredicate) extends JPart with Product with Serializable
- case class JIncludes(elements: Set[Json]) extends JPredicate with Product with Serializable
- case class JMergeExpression(lhs: JExpression, rhs: JExpression) extends JExpression with Product with Serializable
- case class JNumericExpression(lhs: JExpression, rhs: JExpression, op: NumOp) extends JExpression with Product with Serializable
- sealed trait JPart extends AnyRef
Represents part of a jpath.
- case class JPath(path: List[JPart]) extends Product with Serializable
- case class JPathExpression(select: JPath) extends JExpression with Product with Serializable
- case class JPos(pos: Int) extends JPart with Product with Serializable
- sealed trait JPredicate extends AnyRef
Represents something which can match some Json
- case class JRegex(regex: String) extends JPredicate with Product with Serializable
- case class JStringExpression(lhs: JExpression, rhs: JExpression, op: StrOp) extends JExpression with Product with Serializable
- sealed trait JType extends AnyRef
A class representing the available json types
- case class JsonDelta(remove: List[JPath] = Nil, append: Json = Json.Null) extends Product with Serializable
- case class JsonDiff(deltas: List[DiffEntry]) extends Product with Serializable
- case class Lt(lt: Json) extends ComparablePredicate with Product with Serializable
- case class Lte(lte: Json) extends ComparablePredicate with Product with Serializable
- case class Not(not: JPredicate) extends JPredicate with Product with Serializable
- sealed trait NumOp extends AnyRef
- case class Or(or: List[JPredicate]) extends JPredicate with Product with Serializable
- implicit final class RichDec[T] extends AnyVal
- final case class RichJsonOps(json: Json) extends AnyVal with Product with Serializable
- trait StrOp extends AnyRef
Represents an operation on the values of two strings, presumably obtained in turn from evaluating some json, but that's not strictly necessary.
- case class TestPredicate(select: JPath, test: JPredicate) extends JPredicate with Product with Serializable
- abstract class TimePredicate extends AnyRef
- type TypeByPath = (List[String], JType)
- sealed trait TypeNode extends AnyRef
Represents the type for a particular path
- case class TypeNodeArray(children: Vector[TypeNode]) extends TypeNode with Product with Serializable
- case class TypeNodeObject(children: Map[String, TypeNode]) extends TypeNode with Product with Serializable
- case class TypeNodeValue(type: JType) extends TypeNode with Product with Serializable
- type TypesByPath = Vector[TypeByPath]
- type ValuePath = Seq[String]
Value Members
- val JsonDiffAsDeltas: DataDiff[Json, Json]
- def deepMergeWithArrayConcat(targetJson: Json, jsonToAdd: Json): Json
- def jsonSelectorForPath(path: JPath): FieldSelector[Json, Json]
- def newTypesByPath(): Vector[(List[String], JType)]
- object AddOp extends BaseNumOp with NumOp with Product with Serializable
- object After extends Serializable
- object And extends Serializable
- object Before extends Serializable
- object ConcatString extends StrOp with Product with Serializable
- object DiffEntry extends Serializable
- object DivideOp extends BaseNumOp with NumOp with Product with Serializable
- object Eq extends Serializable
- object Gt extends Serializable
- object Gte extends Serializable
- object JArrayFind extends Serializable
- object JConstantExpression extends Serializable
- object JExpression
- object JField extends Serializable
- object JFilter extends Serializable
- object JIncludes extends Serializable
- object JMergeExpression extends Serializable
- object JNumericExpression extends Serializable
- object JPart
- object JPath extends Serializable
- object JPathExpression extends Serializable
- object JPos extends Serializable
- object JPredicate
- object JRegex extends Serializable
- object JStringExpression extends Serializable
- object JType
- object JsonDelta extends Serializable
- object JsonDiff extends Serializable
- object JsonDiffAsDataDiff extends DataDiff[Json, JsonDiff]
- object JsonDiffIsEmpty extends IsEmpty[JsonDiff]
- object JsonSemigroup extends Semigroup[Json]
- object Lt extends Serializable
- object Lte extends Serializable
- object MatchAll extends JPredicate with Product with Serializable
- object MatchNone extends JPredicate with Product with Serializable
- object ModuloOp extends BaseNumOp with NumOp with Product with Serializable
- object MultiplyOp extends BaseNumOp with NumOp with Product with Serializable
- object Not extends Serializable
- object NumOp
- object Or extends Serializable
- object RichJsonOps extends Serializable
- object StrOp
- object StrippedJsonDiff extends DataDiff[Json, Json]
- object SubstractOp extends BaseNumOp with NumOp with Product with Serializable
- object TestPredicate extends Serializable
- object TypeNode
- implicit object TypesByPathSemigroup extends Semigroup[TypesByPath]
- object ValuesByPath