01: /*
02: * ImportRef.java
03: *
04: * An ImportRef is a member of the list of imported commands
05: * which is part of the WrappedCommand class.
06: *
07: * Copyright (c) 1999 Mo DeJong.
08: *
09: * See the file "license.terms" for information on usage and
10: * redistribution of this file, and for a DISCLAIMER OF ALL
11: * WARRANTIES.
12: *
13: * RCS: @(#) $Id: ImportRef.java,v 1.1 1999/08/05 03:42:49 mo Exp $
14: */
15:
16: package tcl.lang;
17:
18: /**
19: * An imported command is created in an namespace when it imports a "real"
20: * command from another namespace. An imported command has a Command
21: * structure that points (via its ClientData value) to the "real" Command
22: * structure in the source namespace's command table. The real command
23: * records all the imported commands that refer to it in a list of ImportRef
24: * structures so that they can be deleted when the real command is deleted.
25: */
26:
27: class ImportRef {
28: WrappedCommand importedCmd; // Points to the imported command created in
29: // an importing namespace; this command
30: // redirects its invocations to the "real" cmd.
31: ImportRef next; // Next element on the linked list of
32: // imported commands that refer to the
33: // "real" command. The real command deletes
34: // these imported commands on this list when
35: // it is deleted.
36: }
|