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
|