module InfiniteArray:sig
..end
type 'a
t
此模組實作無限陣列。 *
val make : 'a -> 'a t
make x
建立一個無限陣列,其中每個位置都包含 x
。 *
val get : 'a t -> int -> 'a
get a i
返回陣列 a
中偏移量 i
處的元素。位置從 0 開始編號。 *
val set : 'a t -> int -> 'a -> unit
set a i x
將陣列 a
中偏移量 i
處的元素設定為 x
。位置從 0 開始編號。 *
val extent : 'a t -> int
extent a
是陣列 a
的初始段的長度,該長度足以包含所有曾執行過的 set
操作。換句話說,超出該段的所有元素都具有預設值。
val domain : 'a t -> 'a array
domain a
是陣列 a
的初始段的新副本,其長度為 extent a
。