2.5.8. Double

TODO.

2.5.8.1. Instruction

target = double.add op1 op2 [double_::Add]
Target:double
Operator 1:double
Operator 2:double

Calculates the sum of the two operands. If the sum overflows the range of the double type, the result in undefined.

target = double.as_interval op1 [double_::AsInterval]
Target:interval
Operator 1:double

Converts the double op1 into an interval value, interpreting it as seconds.

target = double.as_sint op1 [double_::AsSInt]
Target:int<*>
Operator 1:double

Converts the double op1 into a signed integer value, rounding to the nearest value.

target = double.as_time op1 [double_::AsTime]
Target:time
Operator 1:double

Converts the double op1 into a time value, interpreting it as seconds since the epoch.

target = double.as_uint op1 [double_::AsUInt]
Target:int<*>
Operator 1:double

Converts the double op1 into an unsigned integer value, rounding to the nearest value.

target = double.div op1 op2 [double_::Div]
Target:double
Operator 1:double
Operator 2:double

Divides op1 by op2, flooring the result. Throws DivisionByZero if op2 is zero.

target = double.eq op1 op2 [double_::Eq]
Target:bool
Operator 1:double
Operator 2:double

Returns true iff op1 equals op2.

target = double.geq op1 op2 [double_::Geq]
Target:bool
Operator 1:double
Operator 2:double

Returns true iff op1 is greater or equal than op2.

target = double.gt op1 op2 [double_::Gt]
Target:bool
Operator 1:double
Operator 2:double

Returns true iff op1 is greater than op2.

target = double.leq op1 op2 [double_::Leq]
Target:bool
Operator 1:double
Operator 2:double

Returns true iff op1 is less or equal than op2.

target = double.lt op1 op2 [double_::Lt]
Target:bool
Operator 1:double
Operator 2:double

Returns true iff op1 is less than op2.

target = double.mod op1 op2 [double_::Mod]
Target:double
Operator 1:double
Operator 2:double

Calculates op1 modulo op2. Throws DivisionByZero if op2 is zero.

target = double.mul op1 op2 [double_::Mul]
Target:double
Operator 1:double
Operator 2:double

Multiplies op1 with op2. If the product overflows the range of the double type, the result in undefined.

target = double.pow op1 op2 [double_::PowDouble]
Target:double
Operator 1:double
Operator 2:double

Raises op1 to the power op2. If the product overflows the range of the double type, the result in undefined.

target = double.sub op1 op2 [double_::Sub]
Target:double
Operator 1:double
Operator 2:double

Subtracts op1 one from op2. If the difference underflows the range of the double type, the result in undefined.