01: /* Copyright 2004-2006 David N. Welton
02:
03: Licensed under the Apache License, Version 2.0 (the "License");
04: you may not use this file except in compliance with the License.
05: You may obtain a copy of the License at
06:
07: http://www.apache.org/licenses/LICENSE-2.0
08:
09: Unless required by applicable law or agreed to in writing, software
10: distributed under the License is distributed on an "AS IS" BASIS,
11: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12: See the License for the specific language governing permissions and
13: limitations under the License.
14: */
15:
16: package org.hecl;
17:
18: /**
19: * The <code>Command</code> interface is the template for all commands
20: * implemented in Hecl.
21: *
22: * @author <a href="mailto:davidw@dedasys.com">David N. Welton </a>
23: * @version 1.0
24: */
25:
26: /* This 'abstract' apparently needs to be here for j2me stuff. */
27:
28: public abstract interface Command {
29:
30: /**
31: * The <code>cmdCode</code> method takes an interpreter and an array of
32: * Things, performs some calculations, and returns a <code>Thing</code>
33: * representing the computed value, or <code>null</code>.
34: *
35: * @param interp
36: * an <code>Interp</code> value
37: * @param argv
38: * a <code>Thing[]</code> value
39: * @return A <code>Thing</code> representing the computed value, or
40: * <code>null</code>.
41: * @exception HeclException
42: * if an error occurs
43: */
44:
45: //void cmdCode(Interp interp, Thing[] argv) throws HeclException;
46: Thing cmdCode(Interp interp, Thing[] argv) throws HeclException;
47: }
|