Provides an implicit object for handling operations on Number with fractional, numeric, and ordering capabilities.
This implicit object combines the functionality of NumberIsFractional, NumberIsNumeric, and NumberIsOrdering, enabling division operations along with general numeric and ordering functionalities for the Number type.
Attributes
- Companion
- trait
- Graph
-
- Supertypes
-
trait NumberIsFractionaltrait NumberIsNumerictrait NumberIsOrderingtrait Fractional[Number]trait Numeric[Number]trait Ordering[Number]trait PartialOrdering[Number]trait Equiv[Number]trait Serializabletrait Comparator[Number]class Objecttrait Matchableclass AnyShow all
- Self type
-
NumberIsFractional.type
Members list
Type members
Inherited classlikes
Attributes
- Inherited from:
- Fractional
- Supertypes
Attributes
- Inherited from:
- Numeric
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
-
This inner class defines comparison operators available for T.
This inner class defines comparison operators available for T.
It can't extend AnyVal because it is not a top-level class or a member of a statically accessible object.
Value parameters
- lhs
-
the left-hand side value for infix comparison operations
Attributes
- Inherited from:
- Ordering
- Supertypes
-
class Objecttrait Matchableclass Any
Value members
Inherited methods
When we do a compare on NatLog numbers, they are in the same order as PureNumber numbers (i.e. monotonically increasing). It's not necessary to convert exact numbers to fuzzy numbers for this purpose, we simply pretend that the NatLog numbers are PureNumber numbers.
When we do a compare on NatLog numbers, they are in the same order as PureNumber numbers (i.e. monotonically increasing). It's not necessary to convert exact numbers to fuzzy numbers for this purpose, we simply pretend that the NatLog numbers are PureNumber numbers.
Value parameters
- x
-
the first Number.
- y
-
the second Number.
Attributes
- Returns
-
an Int representing the order.
- Inherited from:
- NumberIsOrdering
Divides one Number by another Number.
Divides one Number by another Number.
Value parameters
- x
-
the numerator, represented as a Number
- y
-
the denominator, represented as a Number, which must be invertible
Attributes
- Returns
-
the result of dividing x by y, represented as a Number
- Inherited from:
- NumberIsFractional
Returns true if x == y in the ordering.
Returns true if x == y in the ordering.
Value parameters
- x
-
the first value to compare
- y
-
the second value to compare
Attributes
- Definition Classes
-
Ordering -> PartialOrdering -> Equiv
- Inherited from:
- Ordering
Creates a Number instance from the given integer value.
Creates a Number instance from the given integer value.
Value parameters
- x
-
the integer value to be converted to a
Number
Attributes
- Returns
-
a
Numberrepresenting the given integer value - Inherited from:
- NumberIsNumeric
Returns true if x > y in the ordering.
Returns true if x > y in the ordering.
Value parameters
- x
-
the first value to compare
- y
-
the second value to compare
Attributes
- Definition Classes
-
Ordering -> PartialOrdering
- Inherited from:
- Ordering
Returns true if x >= y in the ordering.
Returns true if x >= y in the ordering.
Value parameters
- x
-
the first value to compare
- y
-
the second value to compare
Attributes
- Definition Classes
-
Ordering -> PartialOrdering
- Inherited from:
- Ordering
Returns whether or not the other ordering is the opposite ordering of this one.
Returns whether or not the other ordering is the opposite ordering of this one.
Equivalent to other == this.reverse.
Implementations should only override this method if they are overriding reverse as well.
Value parameters
- other
-
the ordering to check
Attributes
- Returns
-
trueifotheris the reverse of this ordering,falseotherwise - Inherited from:
- Ordering
Returns true if x < y in the ordering.
Returns true if x < y in the ordering.
Value parameters
- x
-
the first value to compare
- y
-
the second value to compare
Attributes
- Definition Classes
-
Ordering -> PartialOrdering
- Inherited from:
- Ordering
Returns true if x <= y in the ordering.
Returns true if x <= y in the ordering.
Value parameters
- x
-
the first value to compare
- y
-
the second value to compare
Attributes
- Definition Classes
-
Ordering -> PartialOrdering
- Inherited from:
- Ordering
Returns x if x >= y, otherwise y.
Returns x if x >= y, otherwise y.
Type parameters
- U
-
a subtype of
T, used to preserve the specific type in the return value
Value parameters
- x
-
the first candidate value
- y
-
the second candidate value
Attributes
- Inherited from:
- Ordering
Returns x if x <= y, otherwise y.
Returns x if x <= y, otherwise y.
Type parameters
- U
-
a subtype of
T, used to preserve the specific type in the return value
Value parameters
- x
-
the first candidate value
- y
-
the second candidate value
Attributes
- Inherited from:
- Ordering
Subtracts the second number from the first number.
Subtracts the second number from the first number.
Value parameters
- x
-
the number from which the second number will be subtracted
- y
-
the number to be subtracted from the first number
Attributes
- Returns
-
the result of subtracting y from x
- Inherited from:
- NumberIsNumeric
Negates the given Number instance.
Negates the given Number instance.
Value parameters
- x
-
the
Numberto be negated
Attributes
- Returns
-
a new
Numberthat is the negation of the inputNumber - Inherited from:
- NumberIsNumeric
Given f, a function from U into T, creates an Ordering[U] whose compare function is equivalent to:
Given f, a function from U into T, creates an Ordering[U] whose compare function is equivalent to:
def compare[U, T: Ordering](x: U, y: U, f: U => T) = Ordering[T].compare(f(x), f(y))
Type parameters
- U
-
the type of the values to be ordered
Value parameters
- f
-
the function to extract a
Tvalue from aUvalue
Attributes
- Returns
-
an
Ordering[U]that orders values by applyingfand comparing the results using this ordering - Inherited from:
- Ordering
Creates an Ordering[T] whose compare function returns the result of this Ordering's compare function, if it is non-zero, or else the result of others compare function.
Creates an Ordering[T] whose compare function returns the result of this Ordering's compare function, if it is non-zero, or else the result of others compare function.
Value parameters
- other
-
an Ordering to use if this Ordering returns zero
Attributes
- Returns
-
an
Ordering[T]that uses this ordering first, falling back tootherwhen values are equal - Example
-
case class Pair(a: Int, b: Int) val pairOrdering = Ordering.by[Pair, Int](_.a) .orElse(Ordering.by[Pair, Int](_.b)) - Inherited from:
- Ordering
Given f, a function from T into S, creates an Ordering[T] whose compare function returns the result of this Ordering's compare function, if it is non-zero, or else a result equivalent to:
Given f, a function from T into S, creates an Ordering[T] whose compare function returns the result of this Ordering's compare function, if it is non-zero, or else a result equivalent to:
def compare[T, S: Ordering](x: T, y: T, f: T => S) = Ordering[S].compare(f(x), f(y))
This function is equivalent to passing the result of Ordering.by(f) to orElse.
Type parameters
- S
-
the type returned by the extraction function
f
Value parameters
- f
-
the function to extract a comparison key from a
Tvalue - ord
-
the implicit ordering for the extracted key type
S
Attributes
- Returns
-
an
Ordering[T]that uses this ordering first, falling back to comparing byfwhen values are equal - Example
-
case class Pair(a: Int, b: Int) val pairOrdering = Ordering.by[Pair, Int](_.a) .orElseBy[Int](_.b) - Inherited from:
- Ordering
Parses the given string representation of a number and attempts to convert it into an Option of Number.
Parses the given string representation of a number and attempts to convert it into an Option of Number.
Value parameters
- str
-
the string to be parsed as a potential representation of a
Number
Attributes
- Returns
-
an
Optioncontaining the parsedNumberif conversion is successful, orNoneif parsing fails - Inherited from:
- NumberIsNumeric
Adds two Number instances and returns their sum.
Adds two Number instances and returns their sum.
Value parameters
- x
-
the first
Numberto be added - y
-
the second
Numberto be added
Attributes
- Returns
-
the result of adding
xandyas aNumber - Inherited from:
- NumberIsNumeric
Returns the opposite ordering of this one.
Returns the opposite ordering of this one.
Implementations overriding this method MUST override isReverseOf as well if they change the behavior at all (for example, caching does not require overriding it).
Attributes
- Returns
-
an
Ordering[T]that compares elements in the reverse order of this ordering - Definition Classes
-
Ordering -> PartialOrdering
- Inherited from:
- Ordering
Attributes
- Inherited from:
- Comparator
Attributes
- Inherited from:
- Comparator
Attributes
- Inherited from:
- Comparator
Attributes
- Inherited from:
- Comparator
Attributes
- Inherited from:
- Comparator
Attributes
- Inherited from:
- Comparator
Multiplies two Number values and returns the result.
Multiplies two Number values and returns the result.
Value parameters
- x
-
the first
Numberoperand - y
-
the second
Numberoperand
Attributes
- Returns
-
the product of the two given
Numbervalues - Inherited from:
- NumberIsNumeric
Converts the given Number instance to a Double.
Converts the given Number instance to a Double.
Value parameters
- x
-
the
Numberinstance to be converted to aDouble
Attributes
- Returns
-
the
Doublerepresentation of the inputNumber - Note
-
Throws CoreException if the
Numberinstance cannot be converted to aDouble - Inherited from:
- NumberIsNumeric
Converts a given Number to a Float value by first converting it to a Double and then to a Float.
Converts a given Number to a Float value by first converting it to a Double and then to a Float.
Value parameters
- x
-
the Number to be converted to a Float
Attributes
- Returns
-
the Float representation of the given Number
- Inherited from:
- NumberIsNumeric
Converts a given Number instance to an Int.
Converts a given Number instance to an Int.
Value parameters
- x
-
the
Numberto be converted to anInt
Attributes
- Returns
-
the integer representation of the given
Number - Inherited from:
- NumberIsNumeric
Converts the given Number instance to a Long representation. If the number is a GeneralNumber and contains a rational value, the rational is converted to a Long. If the rational is absent but a double value is present, it rounds the double to the closest Long. Throws an exception if neither a rational nor a valid double representation can be derived.
Converts the given Number instance to a Long representation. If the number is a GeneralNumber and contains a rational value, the rational is converted to a Long. If the rational is absent but a double value is present, it rounds the double to the closest Long. Throws an exception if neither a rational nor a valid double representation can be derived.
Value parameters
- x
-
the number to be converted to a
Long
Attributes
- Returns
-
the
Longrepresentation of the given number - Note
-
Throws CoreException if the conversion is not possible
- Inherited from:
- NumberIsNumeric
Returns whether a comparison between x and y is defined, and if so the result of compare(x, y).
Returns whether a comparison between x and y is defined, and if so the result of compare(x, y).
Value parameters
- x
-
the first value to compare
- y
-
the second value to compare
Attributes
- Inherited from:
- Ordering
Implicits
Inherited implicits
Attributes
- Definition Classes
-
Fractional -> Numeric
- Inherited from:
- Fractional
This implicit method augments T with the comparison operators defined in scala.math.Ordering.Ops.
This implicit method augments T with the comparison operators defined in scala.math.Ordering.Ops.
Value parameters
- lhs
-
the value to enrich with ordering operators
Attributes
- Inherited from:
- Ordering