[Date Prev][Date Next][Thread Prev][Thread Next][Author Index][Date Index][Thread Index]

Notes from whiteboard at meeting



(Present:  tribble hibbert markm michael)

Revised form of class declaration:

CLASS(Derived,Base) {
  CONCRETE(Derived) | DEFERRED(Derived)
  [ LOCKED(Derived) | DEFERRED_LOCKED(Derived) ]
  [ COPY(Derived) ]
  [ PROXY(Derived) ]
  [ EQ(Derived) ]
  [ MANUAL_GC(Derived) ]
  [ HAS_DEPENDENTS(Derived) ]
  [ PATRIARCH(Derived) | ANCESTOR(Derived) ]
  [ NOT_A_TYPE(Derived) ]
  [ MAY_BECOME(OtherClassName) ]*
  [ MAY_BECOME_ANY_SUBCLASS_OF(OtherClassName) ]*

  [ private: ]  (assumed if not provided)

  [ public: | protected: | private:
	[ method(); ]* ]*

  private:
	[ var; ]*
};

Method attributes:  (* = postfix, + = type)

  PROXY
  SAFE *
  NOFAULT
  SEND_HOOK
  RECEIVE_HOOK
  NOLOCK
  NOWAIT +
  DEFERRED_SUBR *
  DEFERRED_FUNC *
  CONST *

instance variable attributes:

  NOCOPY
  CONST

Things that die unborn:

  PROXY_DEFERRED
  NO_DEPENDENTS

Tasks:

a	cth	move DEFINE_CLASS from Tofu to Stubble
a	cth,m$m	define [[all] macros]
a	cth	remove old macros

b	m$m	fix *xx files for new macros

c	m$m	fix CALC (as st...)

d	cth	stop using protection classes

e	cth	translator generate attributes
e	edt	convert ST copy->nocopy & attribute

f	edt	fix ST stubble (copy->nocopy, copy declaration)
f	cth	separate server stubble from xpp stubble
f	edt	translator generate NOCOPY

.	cth	stubble manual GC
.	mjm	Abrahamx.hxx must define Shep macros
.	cth	convert deferred to attribute

a requires nothing
b requires a
c requires b & e
d requires b
f requires nothing
. requires nothing