Mercurial > urweb
annotate demo/more/dlist.urs @ 1171:7a2a7a8f9cab
benignEffectful
author | Adam Chlipala <adamc@hcoop.net> |
---|---|
date | Sat, 27 Feb 2010 16:49:11 -0500 |
parents | e9c5992bc9bc |
children | 68429cfce8db |
rev | line source |
---|---|
adamc@915 | 1 con dlist :: Type -> Type |
adamc@915 | 2 type position |
adamc@915 | 3 |
adamc@951 | 4 val create : t ::: Type -> transaction (dlist t) |
adamc@915 | 5 val clear : t ::: Type -> dlist t -> transaction unit |
adamc@915 | 6 val append : t ::: Type -> dlist t -> t -> transaction position |
adamc@954 | 7 val replace : t ::: Type -> dlist t -> list t -> transaction unit |
adamc@954 | 8 |
adamc@915 | 9 val delete : position -> transaction unit |
adamc@915 | 10 val elements : t ::: Type -> dlist t -> signal (list t) |
adamc@964 | 11 val size : t ::: Type -> dlist t -> signal int |
adamc@965 | 12 val numPassing : t ::: Type -> (t -> signal bool) -> dlist t -> signal int |
adamc@937 | 13 val foldl : t ::: Type -> acc ::: Type -> (t -> acc -> signal acc) -> acc -> dlist t -> signal acc |
adamc@915 | 14 |
adamc@915 | 15 val render : ctx ::: {Unit} -> [ctx ~ body] => t ::: Type |
adamc@915 | 16 -> (t -> position -> xml (ctx ++ body) [] []) |
adamc@962 | 17 -> {StartPosition : signal (option int), |
adamc@963 | 18 MaxLength : signal (option int), |
adamc@962 | 19 Filter : t -> signal bool, |
adamc@952 | 20 Sort : signal (option (t -> t -> signal bool)) (* <= *)} |
adamc@915 | 21 -> dlist t |
adamc@915 | 22 -> xml (ctx ++ body) [] [] |