Object <- Math |
|
Class Math defines no new attributes.
Fields
No fields are defined by Math or any of its superclasses.
Instance template
instance Math tag; end instance;
Define Class Math; inherits from Object; // integer operations intrinsic MaxLong(i: Signed; j: Signed): Signed; // return the maximum of the two values intrinsic MinLong(i: Signed; j: Signed): Signed; // return the minimum of the two values intrinsic PinLong(i: Signed; min: Signed; max: Signed): Signed; // return Max(Min(i, max), min) intrinsic MaxULong(i: Unsigned; j: Unsigned): Unsigned; // return the maximum of the two values intrinsic MinULong(i: Unsigned; j: Unsigned): Unsigned; // return the minimum of the two values intrinsic AbsLong(i: Signed): Unsigned; // return the absolute value // fixed-point number operations intrinsic FixedMul(multiplicand: Fixed; multiplier: Fixed): Fixed; intrinsic FixedDiv(dividend: Fixed; divisor: Fixed): Fixed; intrinsic IntToFixed(value: Signed): Fixed; intrinsic FixedToInt(value: Fixed): Signed; // localizable number formatting routines intrinsic Numeral(number: Unsigned): Text; // creates a new transient text object for a decimal integer intrinsic NumeralFromSigned(number: Signed): Text; // creates a new transient text object for a decimal integer intrinsic NumeralInKBytes(number: Unsigned): Text; // creates a new transient text object for a decimal integer, expressed in K intrinsic NumberAsLetters(number: Unsigned): Text; // convert to spreadsheet-style A, B, C, ..., AA, ... intrinsic NumberTo2Text(number: Unsigned): Text; // -> more general NumeralWithZeroPad // converts <number> into a two-character text object intrinsic NumberAsWords(number: Unsigned): Text; // converts <number> into worded version intrinsic NumeralFromFixed(number: Fixed; minFractionDigits: Unsigned; maxFractionDigits: Unsigned; formatFlags: Unsigned): Text; // converts <number> into text form intrinsic PlainNumeral(number: Unsigned): Text; // creates a new transient text object for a decimal integer, without thousands separators intrinsic PlainNumeralFromSigned(number: Signed): Text; // creates a new transient text object for a signed decimal integer, without thousands separators // unlocalizable number formatting routines, not intended for user interface purposes intrinsic HexNumeral(number: Unsigned; digits: Unsigned): Text; // converts <number> into a hex numeral with exactly <digits> digits intrinsic Hex8Numeral(number: Unsigned): Text; // converts <number> into an 8-digit hex numeral with leading $ intrinsic NumeralFromMicron(number: Micron): Text; // converts <number> into text form intrinsic NumberedTextFromLiteral(base: Literal; number: Unsigned): Text; // appends number as decimal to base and creates a transient text object // this is useful for making field names for EachExtraField methods // localizable number scanning routines intrinsic UnsignedFromNumeral(numeral: HasText; var result: Unsigned): Unsigned; // converts <numeral> into an unsigned integer // returns number of characters consumed, 0 if not successful intrinsic SignedFromNumeral(numeral: HasText; var result: Signed): Unsigned; // converts <numeral> into a signed integer // returns number of characters consumed, 0 if not successful intrinsic FixedFromNumeral(numeral: HasText; var result: Fixed): Unsigned; // converts <numeral> into a fixed-point number // returns number of characters consumed, 0 if not successful // unlocalizable number scanning routines, not intended for user interface purposes intrinsic UnsignedFromHexNumeral(numeral: HasText; var result: Unsigned): Unsigned; // converts <numeral> into an unsigned integer from hex // basic support for formatting and scanning intrinsic FormatFixedIntoNumberParts(number: Fixed; minFractionDigits: Unsigned; maxFractionDigits: Unsigned; var theNumberParts: NumberParts); intrinsic FormatIntegerIntoNumberParts(number: Unsigned; minusSign: Boolean; var theNumberParts: NumberParts); intrinsic ScanFixedFromNumberParts(theNumberParts: NumberParts; var result: Fixed): Boolean; intrinsic ScanIntegerFromNumberParts(theNumberParts: NumberParts; var result: Unsigned; var isNegative: Boolean): Boolean; end class;