h42222 s 00059/00000/00000 d D 1.1 91/03/08 04:42:23 hopkins 1 0 c date and time created 91/03/08 04:42:23 by hopkins e u U f e 0 t T I 1 #ifndef _object_ #define _object_ #include struct object : root { /* classes */ shared_class class(); root *classes(); boolean understands(name message); boolean descendantof(name classnm); /* naming */ name nm; char *namestr(); boolean rename(name newname); void newname(); object find_name(name address); object find_path(name *path); object find_object(any address); /* hierarchy */ object @parent; object *members; object *parents(); boolean rooted(); void reparent(object *newparents); void initmember(object m); void addmember(object m); object newmember(name classnm); void removemember(object m); void delmember(object m); boolean setscript(char *pdb, char *ps); /* initialization */ void OnInit(); void oninit(); /* variables */ name *persistent; void promote(name var, any val); void softpromote(name var, any value); void unpromote(name var); boolean promoted(name var); boolean scoped(name var); /* housekeeping */ void destroy(); /* messages */ boolean logging; /* scoped */ void deliver_self(name message); void deliver_parent(name message); void deliver(name message); void doit(any thing); }; #endif E 1