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 / ExpressionEvaluatorManager.java @ 47766

History | View | Annotate | Download (4.61 KB)

1

    
2
package org.gvsig.expressionevaluator;
3

    
4
import java.io.Writer;
5
import java.util.Collection;
6
import java.util.List;
7
import java.util.Map;
8
import org.gvsig.expressionevaluator.spi.UserOperatorBase;
9
import org.gvsig.tools.bookmarksandhistory.Bookmarks;
10
import org.gvsig.tools.bookmarksandhistory.History;
11
import org.gvsig.tools.resourcesstorage.ResourcesStorage;
12
import org.gvsig.tools.script.ScriptManager;
13

    
14

    
15
public interface ExpressionEvaluatorManager extends ScriptManager {
16
  
17
    public static final String DYNAMICTEXT_STARTTAG =   "<%";
18
    public static final String DYNAMICTEXT_ENDTAG =   "%>";
19
  
20
    public Object evaluate(String source);
21
    
22
    public Object evaluate(SymbolTable symbolTable, String source);
23
    
24
    public Object evaluate(SymbolTable symbolTable, Code code);
25
    
26
    public String evaluateDynamicText(String source);    
27
    
28
    public String evaluateDynamicText(SymbolTable symbolTable, String source);    
29
    
30
    public String evaluateDynamicText(SymbolTable symbolTable, String source, Writer output);
31
    
32
    public String evaluateDynamicText(SymbolTable symbolTable, String source, Writer output, ResourcesStorage resources);
33

    
34
    public boolean isDynamicText(String source);
35
    
36
    public Code compile(String source);
37
    
38
    public Code compile(LexicalAnalyzer lex, String source);
39
    
40
    public Code optimize(SymbolTable symbolTable, Code code);
41
    
42
    public MutableSymbolTable createSymbolTable();
43
    
44
    public MutableSymbolTable createEmptySymbolTable();
45
    
46
    public SymbolTable getInmutableSymbolTable();
47
    
48
    public SymbolTable getSymbolTable(String name);
49
    
50
    public Collection<SymbolTableFactory> getSymbolTableFactories();
51
    
52
    public void registerSymbolTable(SymbolTableFactory symbolTableFactory);
53
    
54
    public LexicalAnalyzer createLexicalAnalyzer();
55
    
56
    public CodeBuilder createCodeBuilder();
57

    
58
    public Compiler createCompiler();
59
    
60
    public Interpreter createInterpreter();
61
    
62
    public Optimizer createOptimizer();
63
    
64
    public Double getAccuracy();
65
    
66
    public void setAccuracy(Double accuracy);     
67

    
68
    public Expression createExpression();
69
    
70
    public ExpressionBuilder createExpressionBuilder();
71

    
72
    public void registerExpressionBuilderFormatter(Formatter<ExpressionBuilder.Value> formatter);
73

    
74
    public Formatter<ExpressionBuilder.Value> getExpressionBuilderFormatter();
75
    
76
    public void registerGrammar(GrammarFactory factory) ;
77

    
78
    public Collection<GrammarFactory> getGrammarFactories();
79

    
80
    public Grammar createGrammar(String name);
81
    
82
    public Bookmarks<Expression> getBookmarks();
83
    
84
    public History<Expression> getHistory();
85
    
86
    public ResourcesStorage getScriptsResourcesStorage();
87

    
88
    public void setScriptsResourcesStorage(ResourcesStorage scriptsResourcesStorage);
89

    
90
    public void addReprMethod(ReprMethod method);
91
    
92
    public ReprMethod getReprMethod(Object value);
93

    
94
    public void registerClassLoader(ClassLoader loader);
95
    
96
    public List<ClassLoader> getClassLoaders();
97
    
98
    public void populateSymbolTable(SymbolTable aSymbolTable);    
99
    
100
    public ExpressionEvaluator createExpressionEvaluator(Expression expression);
101
    
102
    @Override
103
    public ExpressionEvaluator createEvaluator(String expression);
104

    
105
    public boolean hasHostExpressions(Code statement);
106
    
107
    public boolean hasHostExpressions(ExpressionBuilder.Value statement);
108

    
109
    public boolean hasHostExpressions(String statement);
110
    
111
    public Code resolveHostExpressions(Code statement, Interpreter interpreter);
112

    
113
    public Code resolveHostExpressions(Code statement, SymbolTable symbolTable);
114
    
115
    public ExpressionBuilder.Value resolveHostExpressions(ExpressionBuilder.Value statement, SymbolTable symbolTable);
116
    
117
    public Expression resolveHostExpressions(Expression expression, SymbolTable symbolTable);
118
    
119
    public ExpressionBuilder.Value getHostExpressionValue(ExpressionBuilder.Function hostExpression, ExpressionBuilder expbuilder);
120

    
121
    public ExpressionBuilder.Value getHostExpressionValue(ExpressionBuilder.Function hostExpression, ExpressionBuilder expbuilder, SymbolTable symbolTable);
122

    
123
    public void registerCodeConverter(ConverterToCode converter);
124
    
125
    public ConverterToCode getConverterToCode(Object obj);
126
    
127
    public ConverterToCode getConverterToCodeByName(String name);
128
    
129
    public Code convertToCode(CodeBuilder builder, Object obj, Map<String,Object> props);
130
    
131
    public Code convertToCode(Object obj);
132
    
133
    public ExpressionBuilder.Value convertToValue(Object obj);
134

    
135
    public void registerUserOperator(UserOperator userOperator);
136

    
137
    public Iterable<UserOperator> getUserDefinedOperators(String precedence);
138
}