Statistics
| Revision:

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 / Interpreter.java @ 47301

History | View | Annotate | Download (1.6 KB)

1
package org.gvsig.expressionevaluator;
2

    
3
import java.io.Writer;
4
import org.gvsig.tools.annotation.NotThreadSafe;
5
import org.gvsig.tools.lang.Cloneable;
6
import org.gvsig.tools.resourcesstorage.ResourcesStorage;
7

    
8
@NotThreadSafe
9
public interface Interpreter extends Cloneable {
10

    
11
    public interface Cache {
12
        
13
        public Object get(Object context, Object key);
14
        
15
        public void put(Object context, Object key, Object value);
16
        
17
        public void remove(Object context, Object key);
18
        
19
        public void removeAll();
20
    }
21
    
22
    public void setSymbolTable(SymbolTable symbolTable);
23

    
24
    public SymbolTable getSymbolTable();
25

    
26
    public Object run(Code code);
27

    
28
    public void run(MutableSymbolTable symbolTable, Code code);
29

    
30
    public Object runCode(Code arg) throws Exception;
31

    
32
    public void link(Code code);
33

    
34
    public Double getAccuracy();
35

    
36
    public void setAccuracy(Double accuracy);
37
    
38
    public Code getCurrentCode();
39
    
40
    public Cache getCache();
41

    
42
    @Override
43
    public Interpreter clone() throws CloneNotSupportedException;
44
    
45
    public void setSQLCompatible(boolean sqlCompatible);
46
    
47
    public boolean isSQLCompatible();
48
    
49
    public Object call(String function, Object... args) throws Exception;
50
    
51
    public Object call(SymbolTable symbolTable, String funcname, Object... args) throws Exception ;
52

    
53
    public boolean hasFunction(String function);
54
    
55
    public Writer getWriter();
56
    
57
    public void setWriter(Writer writer);
58
    
59
    public void setResourcesStorage(ResourcesStorage resources);
60
    
61
    public ResourcesStorage getResourcesStorage();
62
}