10 y : int; (* first row *)
11 x : int; (* first column *)
12 rf: int; (* finite rows *)
13 cf: int; (* finite columns *)
14 ri: int; (* infinite rows *)
15 ci: int; (* infinite columns *)
16 p : bool option; (* parent kind *)
26 type text = Plain of string
27 | Link of absolute * string * string
29 type key = Text of text list
33 mutable tc: css; (* css classes *)
34 mutable tu: uri; (* uri *)
35 mutable tx: ext; (* uri extension *)
36 mutable ts: size; (* dimension *)
37 tb: border; (* border *)
38 te: entry; (* contents *)
39 ti: int; (* table identifier *)
42 and entry = Key of key
43 | Line of bool * table list (* true for a row *)
46 let current = ref 0 in
47 fun () -> incr current; !current
50 y = 0; x = 0; rf = 0; cf = 0; ri = 0; ci = 0; p = None;
54 n = b; s = b; e = b; w = b;
57 let mk_key k tc tu tx = {
58 ts = no_size; tb = border false; te = Key k;
59 tc = tc; tu = tu; tx = tx;
63 let mk_line b tl tc tu tx = {
64 ts = no_size; tb = border b; te = Line (b, tl);
65 tc = tc; tu = tu; tx = tx;