svn-gvsig-desktop / trunk / org.gvsig.desktop / org.gvsig.desktop.library / org.gvsig.expressionevaluator / org.gvsig.expressionevaluator.lib / org.gvsig.expressionevaluator.lib.api / src / main / java / org / gvsig / expressionevaluator / Code.java @ 43939
History | View | Annotate | Download (1.41 KB)
1 | 43512 | jjdelcerro | package org.gvsig.expressionevaluator; |
---|---|---|---|
2 | |||
3 | import java.util.Iterator; |
||
4 | import org.gvsig.expressionevaluator.Code.Caller.Arguments; |
||
5 | import org.gvsig.tools.visitor.Visitable; |
||
6 | |||
7 | public interface Code extends Visitable { |
||
8 | |||
9 | public static final int UNDEFINED = -1; |
||
10 | public static final int CONSTANT = 0; |
||
11 | public static final int IDENTIFIER = 1; |
||
12 | public static final int CALLER = 2; |
||
13 | 43939 | jjdelcerro | public static final int METHOD = 3; |
14 | |||
15 | 43521 | jjdelcerro | |
16 | 43512 | jjdelcerro | public interface Constant extends Code { |
17 | |||
18 | public Object value(); |
||
19 | |||
20 | } |
||
21 | |||
22 | public interface Identifier extends Code { |
||
23 | |||
24 | public String name(); |
||
25 | |||
26 | } |
||
27 | |||
28 | public interface Caller extends Code { |
||
29 | |||
30 | public interface Arguments extends Iterable<Code>, Visitable { |
||
31 | |||
32 | public int count(); |
||
33 | |||
34 | @Override
|
||
35 | public Iterator<Code> iterator(); |
||
36 | |||
37 | public Code get(int i); |
||
38 | } |
||
39 | |||
40 | public static final int FUNCTION = 0; |
||
41 | public static final int BINARY_OPERATOR = 1; |
||
42 | public static final int UNARY_OPERATOR = 2; |
||
43 | 43521 | jjdelcerro | |
44 | 43512 | jjdelcerro | public String name(); |
45 | |||
46 | 43521 | jjdelcerro | public Object call(Interpreter interpreter, Object[] args) throws Exception; |
47 | |||
48 | 43512 | jjdelcerro | public Function function();
|
49 | |||
50 | public Function function(Function function);
|
||
51 | |||
52 | public Arguments args();
|
||
53 | |||
54 | public int type(); |
||
55 | 43521 | jjdelcerro | |
56 | 43512 | jjdelcerro | } |
57 | 43939 | jjdelcerro | |
58 | public interface Method extends Caller { |
||
59 | public Code obj();
|
||
60 | |||
61 | public String methodname(); |
||
62 | } |
||
63 | 43512 | jjdelcerro | |
64 | int code();
|
||
65 | } |