io.github.cakelier.tuples.space.dsl.numeric

Members list

Type members

Classlikes

The object implementing the NumericTemplate trait for the double type.

The object implementing the NumericTemplate trait for the double type.

This object represents the specific implementation of the family of traits defined by the NumericTemplate one. It then implements them all specifying that the generic numeric type that is specified in all of them is the Double one.

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type

The object implementing the NumericTemplate trait for the float type.

The object implementing the NumericTemplate trait for the float type.

This object represents the specific implementation of the family of traits defined by the NumericTemplate one. It then implements them all specifying that the generic numeric type that is specified in all of them is the Float one.

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
object IntTemplate extends IntegralTemplate

The object implementing the IntegralTemplate trait for the int type.

The object implementing the IntegralTemplate trait for the int type.

This object represents the specific implementation of the family of traits defined by the IntegralTemplate one. It then implements them all specifying that the generic numeric type that is specified in all of them is the Int one.

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type

The trait for generalizing the creation of integral JsonTemplates.

The trait for generalizing the creation of integral JsonTemplates.

This trait allows to create a family of traits which represents the states in which an integral template can be in after specifying some constraint or other. The template starts "empty", meaning that it is able to match all numeric values for its type. Then, a minimum or maximum value can be specified, either inclusive or exclusive. Another constraint allows to specify the missing half part of the interval. The interval can be left half-open and its limits can be specified in any order. The last constraint that can be specified is the "multiple of" one, which allows to constrain the values that the template can match to only the integral values which are multiple of the given one. After this, template is "complete" and without further constraints to apply. This last constraint can be inserted in any moment during its creation: before, during, or after the specification of the range constraint.

Attributes

Supertypes
class Object
trait Matchable
class Any
Known subtypes
object IntTemplate.type
object LongTemplate.type

The object implementing the IntegralTemplate trait for the long type.

The object implementing the IntegralTemplate trait for the long type.

This object represents the specific implementation of the family of traits defined by the IntegralTemplate one. It then implements them all specifying that the generic numeric type that is specified in all of them is the Int one.

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type

The trait for generalizing the creation of numeric JsonTemplates.

The trait for generalizing the creation of numeric JsonTemplates.

This trait allows to create a family of traits which represents the states in which a numeric template can be in after specifying some constraint or other. The template starts "empty", meaning that it is able to match all numeric values for its type. Then, a minimum or maximum value can be specified, either inclusive or exclusive. The last constraint allows to specify the missing half part of the interval, leaving the template as "complete" and without further constraints to specify. The interval can be left half-open and its limits can be specified in any order.

Attributes

Supertypes
class Object
trait Matchable
class Any
Known subtypes
object DoubleTemplate.type
object FloatTemplate.type
object IntTemplate.type
object LongTemplate.type