stubgen/src/StubCode.i3


 Copyright (C) 1991, Digital Equipment Corporation           
 All rights reserved.                                        
 See the file COPYRIGHT for a full description.              

INTERFACE StubCode;

IMPORT Type, Atom;

TYPE MethodData = RECORD name, intf: Atom.T; sig: Type.Signature END;
     MethodList = REF ARRAY OF MethodData;

PROCEDURE BrandsOK(t: Type.T;
                    existingSuper: Type.T := NIL): BOOLEAN;
RETURN TRUE if all branded types involved in the definition of t have explicity brands. Print an error message for each type that doesn't.

PROCEDURE GenStub(t: Type.Object;
                    objName: Type.Qid;
                    existingSuper: Type.T := NIL;
                    existingSuperName: Type.Qid := NIL);
Generate stubs for the network object with (revealed) type t. objName is the declared name of the object type. If existingSuper is not NIL, it is a superType of t, and the stubs generated for t should use the surrogate methods and owner stubs of existingSuper. existingSuperName is the name of existingSuper

PROCEDURE SigForStub(m: Type.Signature): Type.Signature;
Return a signature for the owner stub procedure for a method with signature m.

PROCEDURE PragmasForStub(): REF ARRAY OF TEXT;
Return pragmas to be associated with arguments in the stub

END StubCode.

StubCode's implementation is in:


interface Type is in:


procedure StubCode.BrandsOK is in:


procedure StubCode.SigForStub is in:


procedure StubCode.PragmasForStub is in: