Commit | Line | Data |
---|---|---|
34e49164 C |
1 | (* !!take care!!: this classe have side effect, not a pure oassoc *) |
2 | class ['a, 'b] oassoc_buffer : | |
3 | int -> | |
4 | (< add : 'a * 'b -> 'd; assoc : 'a -> 'b; del : 'a * 'b -> 'd; | |
5 | delkey : 'a -> 'd; iter : ('a * 'b -> unit) -> unit; length : int; .. > | |
6 | as 'd) -> | |
7 | object ('o) | |
8 | inherit ['a,'b] Oassoc.oassoc | |
9 | ||
10 | (* ocollection concrete instantiation of virtual methods *) | |
11 | method empty : 'o | |
12 | method add : 'a * 'b -> 'o | |
13 | ||
14 | method iter : ('a * 'b -> unit) -> unit | |
15 | method view : ('a * 'b, 'o) Ocollection.view | |
16 | ||
17 | method del : 'a * 'b -> 'o | |
18 | method mem : 'a * 'b -> bool | |
19 | method null : bool | |
20 | ||
21 | (* oassoc concrete instantiation of virtual methods *) | |
22 | method assoc : 'a -> 'b | |
23 | method delkey : 'a -> 'o | |
24 | ||
25 | (* ugly, from objet class, extension trick *) | |
26 | method private myflush : unit | |
27 | method misc_op_hook2 : unit | |
28 | end |