01: /**
02: * Resolver.java
03: *
04: * Interface for resolvers that can be added to
05: * the Tcl Interpreter or to a namespace.
06: *
07: * Copyright (c) 1997 Sun Microsystems, Inc.
08: * Copyright (c) 2001 Christian Krone
09: *
10: * See the file "license.terms" for information on usage and
11: * redistribution of this file, and for a DISCLAIMER OF ALL
12: * WARRANTIES.
13: *
14: * RCS: @(#) $Id: Resolver.java,v 1.2 2005/09/12 00:00:50 mdejong Exp $
15: */package tcl.lang;
16:
17: /**
18: * The Resolver interface specifies the methods that a new Tcl resolver
19: * must implement. See the addInterpResolver method of the Interp class
20: * to see how to add a new resolver to an interperter or the
21: * setNamespaceResolver of the NamespaceCmd class.
22: */
23:
24: public interface Resolver {
25:
26: public WrappedCommand resolveCmd(Interp interp, // The current interpreter.
27: String name, // Command name to resolve.
28: Namespace context, // The namespace to look in.
29: int flags) // 0 or TCL.LEAVE_ERR_MSG.
30: throws TclException; // Tcl exceptions are thrown for Tcl errors.
31:
32: public Var resolveVar(Interp interp, // The current interpreter.
33: String name, // Variable name to resolve.
34: Namespace context, // The namespace to look in.
35: int flags) // 0 or TCL.LEAVE_ERR_MSG.
36: throws TclException; // Tcl exceptions are thrown for Tcl errors.
37:
38: } // end Resolver
|