summaryrefslogtreecommitdiff
path: root/forum/author.ur
blob: e0b1989de57250b1e5eee2dc01436592a862a02e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
type author = option string

val eq_author = Option.eq

val show_author =
    mkShow (
        fn nameOpt =>
	    case nameOpt of
        	None => "Anonymous"
              | Some nam => nam
    )

val read_author =
    let fun parse text =
	    case text of
		"Anonymous" => None
	      | nam => Some nam
    in
	mkRead parse (compose Some parse)
    end

val sql_author = sql_option_prim

val anonymous = None

val namedAuthor = Some