Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
|
|
@ -0,0 +1,28 @@
|
|||
lib objectclass;
|
||||
|
||||
define :class foo;
|
||||
enddefine;
|
||||
|
||||
define define_named_method(method, class);
|
||||
lvars method_str = method >< '';
|
||||
lvars class_str = class >< '';
|
||||
lvars method_hash_str = 'hash_' >< length(class_str) >< '_'
|
||||
>< class_str >< '_' >< length(method_str)
|
||||
>< '_' >< method_str;
|
||||
lvars method_hash = consword(method_hash_str);
|
||||
pop11_compile([
|
||||
lvars ^method_hash = newassoc([]);
|
||||
define :method ^method(self : ^class);
|
||||
^method_hash(self);
|
||||
enddefine;
|
||||
define :method updaterof ^method(val, self : ^class);
|
||||
val -> ^method_hash(self);
|
||||
enddefine;
|
||||
]);
|
||||
enddefine;
|
||||
|
||||
define_named_method("met1", "foo");
|
||||
lvars bar = consfoo();
|
||||
met1(bar) => ;;; default value -- false
|
||||
"baz" -> met1(bar);
|
||||
met1(bar) => ;;; new value
|
||||
Loading…
Add table
Add a link
Reference in a new issue