[Date Prev][Date Next][Thread Prev][Thread Next][Author Index][Date Index][Thread Index]
New CommXcvr::send code
- To: <michael>, <wjr>, <chris>
- Subject: New CommXcvr::send code
- From: Mark S. Miller <mark>
- Date: Tue, 24 Jul 90 17:56:55 PDT
- Cc: <xtech>
A record (approximately) as it appeared on the board. Not intended to
be understood yet by those not in the meeting
void CommXcvr::send (Heaper * obj)
{
SPTR(Heaper) sobj;
IntegerVar objNum;
if (sobj = this->fetchEntryFor(obj)) {
this->send(obj);
} else if (obj->isByProxy()) {
objNum = myCommHandler->assignNumberFor(obj);
this->startInstance(obj->getProxyCategory());
this->send(myCommHandler);
obj->sendProxyTo(this);
this->endInstance();
} else {
this->assignNumberFor(obj);
this->startInstance(obj->getCategory());
obj->sendSelfTo(this);
this->endInstance();
}
}
Given:
CLASS(Foo,Heaper) {
PROXY:
virtual void zip () DEFERRED_SUBR;
public:
LEAF int zap ();
COPY(Foo):
int myI;
};
Generate:
void Foo::sendProxyTo (CommXcvr * trans)
{
this->Foo::sendSelfTo(trans);
}