プログラミング言語SML#解説 3.7.1版
26 Standard ML標準ライブラリ

26.41 WORD

符号なし整数型のプリミティブ演算の提供.

signature WORD =
sig
  eqtype word
  val * : word * word -> word
  val + : word * word -> word
  val - : word * word -> word
  val < : word * word -> bool
  val << : word * Word.word -> word
  val <= : word * word -> bool
  val > : word * word -> bool
  val >= : word * word -> bool
  val >> : word * Word.word -> word
  val andb : word * word -> word
  val compare : word * word -> order
  val div : word * word -> word
  val fmt : StringCvt.radix -> word -> string
  val fromInt : int -> word
  val fromLarge : LargeWord.word -> word
  val fromLargeInt : LargeInt.int -> word
  val fromLargeWord : LargeWord.word -> word
  val fromString : string -> word option
  val max : word * word -> word
  val min : word * word -> word
  val mod : word * word -> word
  val notb : word -> word
  val orb : word * word -> word
  val scan : StringCvt.radix -> (char, ’a) StringCvt.reader -> (word, ’a) StringCvt.reader
  val toInt : word -> int
  val toIntX : word -> int
  val toLarge : word -> LargeWord.word
  val toLargeInt : word -> LargeInt.int
  val toLargeIntX : word -> LargeInt.int
  val toLargeWord : word -> LargeWord.word
  val toLargeWordX : word -> LargeWord.word
  val toLargeX : word -> LargeWord.word
  val toString : word -> string
  val wordSize : int
  val xorb : word * word -> word
  val ~ : word -> word
  val ~>> : word * Word.word -> word
end

シグネチャを実装するストラクチャ

  • Word : WORD

    type word = word

    Word32Wordのストラクチャリプリケーション

  • Word64 : WORD

    type word = word64

    LargeWordWord64のストラクチャリプリケーション

  • Word8 : WORD

    type word = word8