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
- Self type
-
DoubleTemplate.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
- Self type
-
FloatTemplate.type
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
- Self type
-
IntTemplate.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
- Known subtypes
-
object IntTemplate.typeobject 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
- Self type
-
LongTemplate.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 Objecttrait Matchableclass Any
- Known subtypes
-
object DoubleTemplate.typeobject FloatTemplate.typetrait IntegralTemplateobject IntTemplate.typeobject LongTemplate.type