Packages

final case class NumHyperLogLogProperty(hll: HyperLogLog = new HyperLogLog()) extends SchemaProperty[BigDecimal] with Product with Serializable

Tracks the estimated cardinality of the set of number values.

hll

the HyperLogLog data structure used to track the cardinality

Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. NumHyperLogLogProperty
  2. Serializable
  3. Product
  4. Equals
  5. SchemaProperty
  6. AnyRef
  7. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new NumHyperLogLogProperty(hll: HyperLogLog = new HyperLogLog())

    Create a new HLL property

    Create a new HLL property

    hll

    the HyperLogLog data structure used to track the cardinality

Type Members

  1. type S = NumHyperLogLogProperty

Value Members

  1. def collectAnomalies[S <: JValue](value: S, path: String = "$")(implicit p: JsonoidParams, tag: ClassTag[S]): Seq[Anomaly]

    Find all possible anomalies for a value according to the current property

    Find all possible anomalies for a value according to the current property

    value

    the value to check for anomalies

    path

    the path of this property

    tag

    a captured ClassTag to use in the generated anomaly

    returns

    a list of collected anomalies

    Definition Classes
    SchemaProperty
  2. def expandTo(other: Option[S]): S

    Expand a property to cover another property

    Expand a property to cover another property

    other

    the other property to expand to

    returns

    this property expanded to cover the other property

    Definition Classes
    SchemaProperty
  3. val hll: HyperLogLog
  4. def intersectMerge(prop: S)(implicit p: JsonoidParams): S

    Merge with another property using the intersect strategy

    Merge with another property using the intersect strategy

    For properties used in validation, the property should validate against the intersection of the values used to discover each property.

    prop

    the property to merge with

    p

    the JSONoid paramters

    returns

    the merged property

    Definition Classes
    SchemaProperty
  5. def isAnomalous[S <: JValue](value: S, path: String = "$")(implicit p: JsonoidParams, tag: ClassTag[S]): Boolean

    Whether a value should be considered anomalous according to the current property

    Whether a value should be considered anomalous according to the current property

    value

    the value to check

    path

    the path of this property

    tag

    a captured ClassTag used to collect anomalies

    Definition Classes
    SchemaProperty
  6. val isInformational: Boolean

    True if this property is for informational purposes only (not for validation), and false otherwise

    True if this property is for informational purposes only (not for validation), and false otherwise

    Definition Classes
    NumHyperLogLogPropertySchemaProperty
  7. def isSubsetOf(other: S, recursive: Boolean = true)(implicit p: JsonoidParams): Boolean

    Whether this property is compatible with another property

    Whether this property is compatible with another property

    For validation properties, this means that any value that is valid according to this property can *potentially* be valid according to the other property.

    Definition Classes
    SchemaProperty
  8. def mergeOnlySameType(prop: SchemaProperty[BigDecimal], mergeType: MergeType)(implicit p: JsonoidParams): S
    Definition Classes
    SchemaProperty
  9. def mergeValue(value: BigDecimal)(implicit p: JsonoidParams): NumHyperLogLogProperty

    Update the property by merging in a single related value

    Update the property by merging in a single related value

    value

    the value to merge

    p

    the JSONoid parameters to use during merging

    returns

    an updated property with the merged value

    Definition Classes
    NumHyperLogLogPropertySchemaProperty
  10. def mergeable: Boolean

    Whether it is possible to merge this property

    Whether it is possible to merge this property

    returns

    true if the property is mergeable, false otherwise

    Definition Classes
    SchemaProperty
  11. def newDefault()(implicit p: JsonoidParams): NumHyperLogLogProperty

    Build a new instance of the property with default parameters

    Build a new instance of the property with default parameters

    p

    the JSONoid parameters to use during construction

    Definition Classes
    NumHyperLogLogPropertySchemaProperty
  12. def productElementNames: Iterator[String]
    Definition Classes
    Product
  13. def toJson()(implicit p: JsonoidParams): JObject

    Produce a JSON representation of this property

    Produce a JSON representation of this property

    p

    the JSONoid parameters to use during converion

    Definition Classes
    NumHyperLogLogPropertySchemaProperty
  14. def transform(transformer: PartialFunction[(String, JsonSchema[_]), JsonSchema[_]], path: String): S

    Recursively transform properties nested under this property.

    Recursively transform properties nested under this property.

    This must be implemented for any property which contain schema objects Currently this is only these properties: * DynamicObjectTypeProperty in DynamicObjectSchema * ObjectTypesProperty in ObjectSchema * PatternTypesProperty in ObjectSchema * ItemTypeProperty in ArraySchema * ProductSchemaTypesProperty in ProductSchema

    transformer

    a function to be applied to recursively tranform properties

    path

    the path to the current property

    returns

    the recursively transformed property

    Definition Classes
    SchemaProperty
  15. def unionMerge(otherProp: NumHyperLogLogProperty)(implicit p: JsonoidParams): NumHyperLogLogProperty

    Merge with another property using the union strategy.

    Merge with another property using the union strategy.

    For properties used in validation, the property should validate against the union of the values used to discover each property.

    p

    the JSONoid paramters

    returns

    the merged property

    Definition Classes
    NumHyperLogLogPropertySchemaProperty