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 / LexicalAnalyzer.java @ 46081

History | View | Annotate | Download (3.05 KB)

1
package org.gvsig.expressionevaluator;
2

    
3

    
4
import org.gvsig.tools.lang.Cloneable;
5

    
6

    
7
public interface LexicalAnalyzer extends Cloneable {
8

    
9
    public interface Token extends Cloneable {
10

    
11
        public static final int EOF = -1;
12
        public static final int IDENTIFIER = 0;
13
        public static final int STRING_LITERAL = 1;
14
        public static final int INTEGER_LITERAL = 2;
15
        public static final int FLOATING_POINT_LITERAL = 3;
16
        public static final int NULL = 4;
17
        public static final int TRUE = 5;
18
        public static final int FALSE = 6;
19
        public static final int OP_NOT = 9;
20
        public static final int OP_ADD = 10;
21
        public static final int OP_SUBST = 11;
22
        public static final int OP_MULT = 12;
23
        public static final int OP_DIV = 13;
24
        public static final int OP_MOD = 14;
25
        public static final int OP_REGEXP = 15;
26
        public static final int OP_LT = 16;
27
        public static final int OP_GT = 17;
28
        public static final int OP_LE = 18;
29
        public static final int OP_GE = 19;
30
        public static final int OP_EQ = 20;
31
        public static final int OP_NE = 21;
32
        public static final int PRED_BETWEEN = 22;
33
        public static final int PRED_LIKE = 23;
34
        public static final int PRED_ILIKE = 24;
35
        public static final int PRED_IS = 25;
36
        public static final int OP_OR = 26;
37
        public static final int OP_AND = 27;
38
        public static final int ISNULL = 28;
39
        public static final int NOTNULL = 29;
40
        public static final int PARENTHESIS_OPEN = 30;
41
        public static final int PARENTHESIS_CLOSE = 31;
42
        public static final int COMA = 32;
43
        public static final int OP_GETATTR = 33;
44
        public static final int CHAR = 34;
45
        public static final int OP_CONCAT = 35;
46
        public static final int OPEN_BRACKET = 36;
47
        public static final int CLOSED_BRACKET = 37;
48
        public static final int ASSIGNMENT = 38;
49
        public static final int ARGUMENT_ASSIGNMENT = 39;
50
        public static final int COLON = 40;
51

    
52
        @Override
53
        public Token clone() throws CloneNotSupportedException;
54
        
55
        public void set(int type, String literal);
56

    
57
        public void set(int type, String literal, Object value);
58

    
59
        public int getType();
60

    
61
        public Object getValue();
62

    
63
        public String getLiteral();
64

    
65
        public void setLiteral(String value);
66

    
67
        public boolean is(String... value);
68
    }
69

    
70
    public void setSource(String source);
71
    
72
    public Token look();
73

    
74
    public Token next();
75

    
76
    @Override
77
    public LexicalAnalyzer clone() throws CloneNotSupportedException;
78

    
79
    public boolean isEOF();
80
    
81
    public int getPosition(); 
82
    
83
    public int getMaxPosition(); 
84
    
85
    public int getLine();
86
    
87
    public int getMaxLine(); 
88
    
89
    public int getColumn();
90

    
91
    public int getMaxColumn();
92
    
93
    public String getSource();
94
    
95
    public void setUseBracketsForIdentifiers(boolean useBracketsForIdentifiers);
96
    
97
    public boolean getUseBracketsForIdentifiers();
98
    
99
    public String getSourceContext(); 
100
}