Mercurial > feed
comparison src/ur/feed.urs @ 4:af95d9d73eb5
Feed.tree
author | Adam Chlipala <adam@chlipala.net> |
---|---|
date | Tue, 11 Jan 2011 18:04:15 -0500 |
parents | ea0ca570c121 |
children | 2717458d8951 |
comparison
equal
deleted
inserted
replaced
3:ea0ca570c121 | 4:af95d9d73eb5 |
---|---|
1 con pattern :: Type -> Type -> Type | 1 con pattern :: Type -> Type -> Type |
2 | 2 |
3 con tagInternal :: {Unit} -> Type | 3 con tagInternal :: {Unit} -> Type |
4 | |
5 val null : pattern unit (variant []) | |
4 | 6 |
5 val tag : attrs ::: {Unit} -> folder attrs -> string -> $(mapU string attrs) | 7 val tag : attrs ::: {Unit} -> folder attrs -> string -> $(mapU string attrs) |
6 -> pattern (tagInternal attrs) {Attrs : $(mapU string attrs), Cdata : option string} | 8 -> pattern (tagInternal attrs) {Attrs : $(mapU string attrs), Cdata : option string} |
7 | 9 |
8 val tagA : attrs ::: {Unit} -> folder attrs -> string -> $(mapU string attrs) | 10 val tagA : attrs ::: {Unit} -> folder attrs -> string -> $(mapU string attrs) |
13 | 15 |
14 val children : parentI ::: Type -> parent ::: Type -> children ::: {(Type * Type)} | 16 val children : parentI ::: Type -> parent ::: Type -> children ::: {(Type * Type)} |
15 -> pattern parentI parent -> $(map (fn (i, d) => pattern i d) children) -> folder children | 17 -> pattern parentI parent -> $(map (fn (i, d) => pattern i d) children) -> folder children |
16 -> pattern (childrenInternal parentI (map fst children)) (parent * $(map snd children)) | 18 -> pattern (childrenInternal parentI (map fst children)) (parent * $(map snd children)) |
17 | 19 |
20 con treeInternal :: Type -> Type -> Type | |
21 | |
22 val tree : parentI ::: Type -> parent ::: Type -> childI ::: Type -> child ::: Type | |
23 -> pattern parentI parent -> pattern childI child | |
24 -> pattern (treeInternal parentI childI) (parent * child) | |
25 | |
18 val app : internal ::: Type -> data ::: Type -> pattern internal data -> (data -> transaction {}) -> string -> transaction {} | 26 val app : internal ::: Type -> data ::: Type -> pattern internal data -> (data -> transaction {}) -> string -> transaction {} |