adamc@915: con dlist :: Type -> Type adamc@915: type position adamc@915: adamc@951: val create : t ::: Type -> transaction (dlist t) adamc@915: val clear : t ::: Type -> dlist t -> transaction unit adamc@915: val append : t ::: Type -> dlist t -> t -> transaction position adamc@954: val replace : t ::: Type -> dlist t -> list t -> transaction unit adamc@954: adamc@915: val delete : position -> transaction unit adamc@915: val elements : t ::: Type -> dlist t -> signal (list t) adamc@964: val size : t ::: Type -> dlist t -> signal int adamc@965: val numPassing : t ::: Type -> (t -> signal bool) -> dlist t -> signal int adamc@937: val foldl : t ::: Type -> acc ::: Type -> (t -> acc -> signal acc) -> acc -> dlist t -> signal acc adamc@915: adam@1641: val render : ctx ::: {Unit} -> [ctx ~ [Dyn]] => t ::: Type adam@1641: -> (t -> position -> xml (ctx ++ [Dyn]) [] []) adamc@962: -> {StartPosition : signal (option int), adamc@963: MaxLength : signal (option int), adamc@962: Filter : t -> signal bool, adamc@952: Sort : signal (option (t -> t -> signal bool)) (* <= *)} adamc@915: -> dlist t adam@1641: -> xml (ctx ++ [Dyn]) [] []