home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 7 / Apprentice-Release7.iso / Source Code / C / Applications / Moscow ML 1.42 / lib / Word8Array.sig < prev    next >
Encoding:
Text File  |  1997-08-18  |  1.4 KB  |  40 lines  |  [TEXT/Moml]

  1. (* Word8Array -- SML Basis Library *)
  2.  
  3. eqtype array
  4. type elem   = Word8.word
  5. type vector = Word8Vector.vector
  6.  
  7. val maxLen   : int
  8.  
  9. val array    : int * elem -> array
  10. val tabulate : int * (int -> elem) -> array
  11. val fromList : elem list -> array
  12.  
  13. val length   : array -> int
  14. val sub      : array * int -> elem
  15. val update   : array * int * elem -> unit
  16. val extract  : array * int * int option -> vector
  17.  
  18. val copy     : {src: array,  si: int, len: int option, 
  19.         dst: array, di: int} -> unit
  20. val copyVec  : {src: vector, si: int, len: int option, 
  21.         dst: array, di: int} -> unit
  22.  
  23. val app      : (elem -> unit) -> array -> unit
  24. val foldl    : (elem * 'b -> 'b) -> 'b -> array -> 'b
  25. val foldr    : (elem * 'b -> 'b) -> 'b -> array -> 'b
  26. val modify   : (elem -> elem) -> array -> unit
  27.  
  28. val appi     : (int * elem -> unit) -> array * int * int option -> unit
  29. val foldli   : (int * elem * 'b -> 'b) -> 'b -> array * int * int option -> 'b
  30. val foldri   : (int * elem * 'b -> 'b) -> 'b -> array * int * int option -> 'b
  31. val modifyi  : (int * elem -> elem) -> array * int * int option -> unit
  32.  
  33. (* Type [array] is the type of one-dimensional, mutable, zero-based
  34.    constant-time-access arrays with elements of type Word8.word, that
  35.    is, 8-bit words.  Arrays a1 and a2 are equal if both were created
  36.    by the same call to a primitive (array0, array, tabulate, fromList).
  37.  
  38.    All operations are as for Array.array.
  39. *)
  40.