Annotation of gforth/mini-oof.fs, revision 1.8
1.6 pazsan 1: \ Mini-OOF 12apr98py
1.7 anton 2: : method ( m v "name" -- m' v ) Create over , swap cell+ swap
1.1 pazsan 3: DOES> ( ... o -- ... ) @ over @ + @ execute ;
1.7 anton 4: : var ( m v size "name" -- m v' ) Create over , +
1.1 pazsan 5: DOES> ( o -- addr ) @ + ;
1.6 pazsan 6: : class ( class -- class methods vars ) dup 2@ ;
1.7 anton 7: : end-class ( class methods vars "name" -- )
1.6 pazsan 8: Create here >r , dup , 2 cells ?DO ['] noop , 1 cells +LOOP
9: cell+ dup cell+ r> rot @ 2 cells /string move ;
1.8 ! pazsan 10: : >vt ( class "name" -- addr ) ' >body @ + ;
! 11: : bind ( class "name" -- xt ) >vt @ ;
! 12: : defines ( xt class "name" -- ) >vt ! ;
1.6 pazsan 13: : new ( class -- o ) here over @ allot swap over ! ;
1.8 ! pazsan 14: : :: ( class "name" -- ) bind compile, ;
1.6 pazsan 15: Create object 1 cells , 2 cells ,
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>