final case class StringHyperLogLogProperty(hll: HyperLogLog = new HyperLogLog()) extends SchemaProperty[String] with Product with Serializable
Tracks the estimated cardinality of the set of string values.
- hll
the HyperLogLog data structure used to track the cardinality
- Alphabetic
- By Inheritance
- StringHyperLogLogProperty
- Serializable
- Product
- Equals
- SchemaProperty
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new StringHyperLogLogProperty(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
- type S = StringHyperLogLogProperty
- Definition Classes
- StringHyperLogLogProperty → SchemaProperty
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- 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
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- 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
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- val hll: HyperLogLog
- 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
- 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
- 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
- StringHyperLogLogProperty → SchemaProperty
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- 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
- def mergeOnlySameType(prop: SchemaProperty[String], mergeType: MergeType)(implicit p: JsonoidParams): S
- Definition Classes
- SchemaProperty
- def mergeValue(value: String)(implicit p: JsonoidParams): StringHyperLogLogProperty
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
- StringHyperLogLogProperty → SchemaProperty
- 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
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def newDefault()(implicit p: JsonoidParams): StringHyperLogLogProperty
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
- StringHyperLogLogProperty → SchemaProperty
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- def productElementNames: Iterator[String]
- Definition Classes
- Product
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- 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
- StringHyperLogLogProperty → SchemaProperty
- 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
- def unionMerge(otherProp: StringHyperLogLogProperty)(implicit p: JsonoidParams): StringHyperLogLogProperty
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
- StringHyperLogLogProperty → SchemaProperty
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()