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 @ 46091

History | View | Annotate | Download (3.16 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
        public static final int BEGIN_$CONSTANT = 41;
52
        public static final int END_$CONSTANT = 42;
53

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

    
59
        public void set(int type, String literal, Object value);
60

    
61
        public int getType();
62

    
63
        public Object getValue();
64

    
65
        public String getLiteral();
66

    
67
        public void setLiteral(String value);
68

    
69
        public boolean is(String... value);
70
    }
71

    
72
    public void setSource(String source);
73
    
74
    public Token look();
75

    
76
    public Token next();
77

    
78
    @Override
79
    public LexicalAnalyzer clone() throws CloneNotSupportedException;
80

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

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