Module: dfmc-back-end Copyright: Original Code is Copyright (c) 1995-2004 Functional Objects, Inc. All rights reserved. License: Functional Objects Library Public License Version 1.0 Dual-license: GNU Lesser General Public License Warranty: Distributed WITHOUT WARRANTY OF ANY KIND //// Load-bound reference queries. define generic load-bound-object? (object) => (boolean); define method load-bound-object? (object) => (boolean) #f end method; define generic load-bound-reference? (referencing-object, referenced-object) => (boolean); define method load-bound-reference? (referencing-object, referenced-object) => (boolean) load-bound-object?(referenced-object) end method; //// Load-bound references. // A load-bound reference encapsulates a reference to an object // whose identity and/or location can not be determined until load // time. Examples are references to interned objects such as symbols, // and cross-dll references to static data. define abstract class () constant slot load-bound-referenced-object, required-init-keyword: referenced-object:; end class; //// Load-bound references from bindings. define class () constant slot load-bound-referencing-binding, required-init-keyword: referencing-binding:; end class; //// Load-bound references from objects. define abstract class () constant slot load-bound-referencing-object, required-init-keyword: referencing-object:; end class; /* // A load-bound reference as the object-class of the referencing object. define class () end class; */ // A load-bound reference as a slot value of the referencing object. define abstract class () constant slot load-bound-referencing-slot, required-init-keyword: referencing-slot: end class; define class () end class; define class () constant slot load-bound-referencing-slot-index, required-init-keyword: referencing-slot-index:; end class; //// Load-bound references from code. // We don't currently require any information about the location of a // code reference since we don't patch code, just generate an // indirection. define class () end class; // eof