Documentation for routine truncate assembled from the following pages:

Class: Complex §

From Complex

(Complex) method truncate §

Defined as:

method truncate(Complex:D: --> Complex:D)

Removes the fractional part of both the real and imaginary parts of the number, using Real.truncate, and returns the result as a new Complex.

say (1.2-3.8i).truncate;        # OUTPUT: «1-3i␤»

Role: Real §

From Real

(Real) method truncate §

method truncate(Real:D: --> Int:D)

Rounds the number towards zero.

Class: Cool §

From Cool

(Cool) routine truncate §

Defined as:

multi sub truncate(Numeric(Cool))
multi method truncate()

Coerces the invocant (or in sub form, its argument) to Numeric, and rounds it towards zero.

say 1.2.truncate;       # OUTPUT: «1␤» 
say truncate -1.2;      # OUTPUT: «-1␤»