Overview  Index  Help 
Standard ML Basis Library

MONO_ARRAY_SLICE

All Known Implementing Modules:

Real64ArraySliceRealArraySliceCharArraySliceTextIOFn.ASWord8ArraySlice,
BinIOFn.AS


signature MONO_ARRAY_SLICE =
sig
  type elem
  type array
  type slice
  type vector
  type vector_slice
  val length : slice -> int
  val sub : slice * int -> elem
  val update : slice * int * elem -> unit
  val full : array -> slice
  val slice : array * int * int option -> slice
  val subslice : slice * int * int option -> slice
  val base : slice -> array * int * int
  val vector : slice -> vector
  val copy : {src : slice, dst : array, di : int} -> unit
  val copyVec : {src : vector_slice, dst : array, di : int} -> unit
  val isEmpty : slice -> bool
  val getItem : slice -> (elem * sliceoption
  val appi : (int * elem -> unit) -> slice -> unit
  val app : (elem -> unit) -> slice -> unit
  val modifyi : (int * elem -> elem) -> slice -> unit
  val modify : (elem -> elem) -> slice -> unit
  val foldli : (int * elem * 'a -> 'a) -> 'a -> slice -> 'a
  val foldri : (int * elem * 'a -> 'a) -> 'a -> slice -> 'a
  val foldl : (elem * 'a -> 'a) -> 'a -> slice -> 'a
  val foldr : (elem * 'a -> 'a) -> 'a -> slice -> 'a
  val findi : (int * elem -> bool) -> slice -> (int * elemoption
  val find : (elem -> bool) -> slice -> elem option
  val exists : (elem -> bool) -> slice -> bool
  val all : (elem -> bool) -> slice -> bool
  val collate : (elem * elem -> order) -> slice * slice -> order
end

 
Type detail

elem

type elem


array

type array


slice

type slice


vector

type vector


vector_slice

type vector_slice

     
Value detail

length

val length : slice -> int


sub

val sub : slice * int -> elem


update

val update : slice * int * elem -> unit


full

val full : array -> slice


slice

val slice : array * int * int option -> slice


subslice

val subslice : slice * int * int option -> slice


base

val base : slice -> array * int * int


vector

val vector : slice -> vector


copy

val copy : {src : slice, dst : array, di : int} -> unit


copyVec

val copyVec : {src : vector_slice, dst : array, di : int} -> unit


isEmpty

val isEmpty : slice -> bool


getItem

val getItem : slice -> (elem * sliceoption


appi

val appi : (int * elem -> unit) -> slice -> unit


app

val app : (elem -> unit) -> slice -> unit


modifyi

val modifyi : (int * elem -> elem) -> slice -> unit


modify

val modify : (elem -> elem) -> slice -> unit


foldli

val foldli : (int * elem * 'a -> 'a) -> 'a -> slice -> 'a


foldri

val foldri : (int * elem * 'a -> 'a) -> 'a -> slice -> 'a


foldl

val foldl : (elem * 'a -> 'a) -> 'a -> slice -> 'a


foldr

val foldr : (elem * 'a -> 'a) -> 'a -> slice -> 'a


findi

val findi : (int * elem -> bool) -> slice -> (int * elemoption


find

val find : (elem -> bool) -> slice -> elem option


exists

val exists : (elem -> bool) -> slice -> bool


all

val all : (elem -> bool) -> slice -> bool


collate

val collate : (elem * elem -> order) -> slice * slice -> order

 


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).