Overview  Index  Help 
Standard ML Basis Library

Real64Imp


structure Real64Imp : REAL =
struct
  structure I = InlineT.DfltInt
  structure Math = Math64
  type real = real
  val *+ : real * real * real -> real
  val *- : real * real * real -> real
  val == : real * real -> bool
  val != : real * real -> bool
  val unordered : real * real -> bool
  val ?= : real * real -> bool
  val isNormal : real -> bool
  val maxFinite : real
  val minNormalPos : real
  val minPos : real
  val posInf : real
  val negInf : real
  val isFinite : real -> bool
  val isNan : real -> bool
  val floor : real -> Int.int
  val ceil : real -> Int.int
  val trunc : real -> Int.int
  val round : real -> Int.int
  val maxInt
  val realFloor : real -> real
  val realCeil : real -> real
  val realTrunc : real -> real
  val abs : real -> real
  val fromInt : Int.int -> real
  val toInt : IEEEReal.rounding_mode -> real -> int
  val toLarge : real -> LargeReal.real
  val fromLarge : IEEEReal.rounding_mode -> LargeReal.real -> real
  val sign : real -> int
  val signBit : real -> bool
  val sameSign : real * real -> bool
  val copySign : real * real -> real
  val compare : real * real -> order
  val compareReal : real * real -> IEEEReal.real_order
  val class : real -> IEEEReal.float_class
  val radix : Int.int
  val precision : Int.int
  val radix_to_the_precision
  val two_to_the_neg_1000
  val toManExp : real -> {man : real, exp : int}
  val fromManExp : {man : real, exp : int} -> real
  val fromLargeInt : LargeInt.int -> real
  val whole
  val split : real -> {whole : real, frac : real}
  val realMod : real -> real
  val rem : real * real -> real
  val checkFloat : real -> real
  val rbase
  val toLargeInt : IEEEReal.rounding_mode -> real -> LargeInt.int
  val nextAfter : real * real -> real
  val min : real * real -> real
  val max : real * real -> real
  val toDecimal : real -> IEEEReal.decimal_approx
  val fromDecimal : IEEEReal.decimal_approx -> real
  val fmt : StringCvt.realfmt -> real -> string
  val toString : real -> string
  val scan : (char, 'a) StringCvt.reader -> (real, 'a) StringCvt.reader
  val fromString : string -> real option
  val ~ : real -> real
  val + : real * real -> real
  val - : real * real -> real
  val * : real * real -> real
  val / : real * real -> real
  val > : real * real -> bool
  val < : real * real -> bool
  val >= : real * real -> bool
  val <= : real * real -> bool
end

 
Type detail

real

type real = real

     
Value detail

*+

val *+ : real * real * real -> real


*-

val *- : real * real * real -> real


==

val == : real * real -> bool


!=

val != : real * real -> bool


unordered

val unordered : real * real -> bool


?=

val ?= : real * real -> bool


isNormal

val isNormal : real -> bool


maxFinite

val maxFinite : real


minNormalPos

val minNormalPos : real


minPos

val minPos : real


posInf

val posInf : real


negInf

val negInf : real


isFinite

val isFinite : real -> bool


isNan

val isNan : real -> bool


floor

val floor : real -> Int.int


ceil

val ceil : real -> Int.int


trunc

val trunc : real -> Int.int


round

val round : real -> Int.int


maxInt

val maxInt


realFloor

val realFloor : real -> real


realCeil

val realCeil : real -> real


realTrunc

val realTrunc : real -> real


abs

val abs : real -> real


fromInt

val fromInt : Int.int -> real


toInt

val toInt : IEEEReal.rounding_mode -> real -> int


toLarge

val toLarge : real -> LargeReal.real


fromLarge

val fromLarge : IEEEReal.rounding_mode -> LargeReal.real -> real


sign

val sign : real -> int


signBit

val signBit : real -> bool


sameSign

val sameSign : real * real -> bool


copySign

val copySign : real * real -> real


compare

val compare : real * real -> order


compareReal

val compareReal : real * real -> IEEEReal.real_order


class

val class : real -> IEEEReal.float_class

This proably needs to be reorganized *


radix

val radix : Int.int


precision

val precision : Int.int


radix_to_the_precision

val radix_to_the_precision


two_to_the_neg_1000

val two_to_the_neg_1000


toManExp

val toManExp : real -> {man : real, exp : int}


fromManExp

val fromManExp : {man : real, exp : int} -> real


fromLargeInt

val fromLargeInt : LargeInt.int -> real


whole

val whole


split

val split : real -> {whole : real, frac : real}


realMod

val realMod : real -> real


rem

val rem : real * real -> real


checkFloat

val checkFloat : real -> real


rbase

val rbase


toLargeInt

val toLargeInt : IEEEReal.rounding_mode -> real -> LargeInt.int


nextAfter

val nextAfter : real * real -> real


min

val min : real * real -> real


max

val max : real * real -> real


toDecimal

val toDecimal : real -> IEEEReal.decimal_approx


fromDecimal

val fromDecimal : IEEEReal.decimal_approx -> real


fmt

val fmt : StringCvt.realfmt -> real -> string


toString

val toString : real -> string


scan

val scan : (char, 'a) StringCvt.reader -> (real, 'a) StringCvt.reader


fromString

val fromString : string -> real option


~

val ~ : real -> real


+

val + : real * real -> real


-

val - : real * real -> real


*

val * : real * real -> real


/

val / : real * real -> real


>

val > : real * real -> bool


<

val < : real * real -> bool


>=

val >= : real * real -> bool


<=

val <= : real * real -> bool

 


Overview  Index  Help 
Standard ML Basis Library

This document may be distributed freely over the internet as long as the copyright notice and license terms below are prominently displayed within every machine-readable copy.

Copyright © 2003 AT&T and Lucent Technologies. All rights reserved.

Permission is granted for internet users to make one paper copy for their own personal use. Further hardcopy reproduction is strictly prohibited. Permission to distribute the HTML document electronically on any medium other than the internet must be requested from the copyright holders by contacting the editors. Printed versions of the SML Basis Manual are available from Cambridge University Press. To order, please visit www.cup.org (North America) or www.cup.cam.ac.uk (outside North America).