1 | /* Generated By:JavaCC: Do not edit this line. Token.java Version 4.1 */
|
---|
2 | /* JavaCCOptions:TOKEN_EXTENDS=,KEEP_LINE_COL=null */
|
---|
3 | package org.openstreetmap.josm.gui.mappaint.mapcss.parser;
|
---|
4 |
|
---|
5 | /**
|
---|
6 | * Describes the input token stream.
|
---|
7 | */
|
---|
8 |
|
---|
9 | public class Token {
|
---|
10 |
|
---|
11 | /**
|
---|
12 | * An integer that describes the kind of this token. This numbering
|
---|
13 | * system is determined by JavaCCParser, and a table of these numbers is
|
---|
14 | * stored in the file ...Constants.java.
|
---|
15 | */
|
---|
16 | public int kind;
|
---|
17 |
|
---|
18 | /** The line number of the first character of this Token. */
|
---|
19 | public int beginLine;
|
---|
20 | /** The column number of the first character of this Token. */
|
---|
21 | public int beginColumn;
|
---|
22 | /** The line number of the last character of this Token. */
|
---|
23 | public int endLine;
|
---|
24 | /** The column number of the last character of this Token. */
|
---|
25 | public int endColumn;
|
---|
26 |
|
---|
27 | /**
|
---|
28 | * The string image of the token.
|
---|
29 | */
|
---|
30 | public String image;
|
---|
31 |
|
---|
32 | /**
|
---|
33 | * A reference to the next regular (non-special) token from the input
|
---|
34 | * stream. If this is the last token from the input stream, or if the
|
---|
35 | * token manager has not read tokens beyond this one, this field is
|
---|
36 | * set to null. This is true only if this token is also a regular
|
---|
37 | * token. Otherwise, see below for a description of the contents of
|
---|
38 | * this field.
|
---|
39 | */
|
---|
40 | public Token next;
|
---|
41 |
|
---|
42 | /**
|
---|
43 | * This field is used to access special tokens that occur prior to this
|
---|
44 | * token, but after the immediately preceding regular (non-special) token.
|
---|
45 | * If there are no such special tokens, this field is set to null.
|
---|
46 | * When there are more than one such special token, this field refers
|
---|
47 | * to the last of these special tokens, which in turn refers to the next
|
---|
48 | * previous special token through its specialToken field, and so on
|
---|
49 | * until the first special token (whose specialToken field is null).
|
---|
50 | * The next fields of special tokens refer to other special tokens that
|
---|
51 | * immediately follow it (without an intervening regular token). If there
|
---|
52 | * is no such token, this field is null.
|
---|
53 | */
|
---|
54 | public Token specialToken;
|
---|
55 |
|
---|
56 | /**
|
---|
57 | * An optional attribute value of the Token.
|
---|
58 | * Tokens which are not used as syntactic sugar will often contain
|
---|
59 | * meaningful values that will be used later on by the compiler or
|
---|
60 | * interpreter. This attribute value is often different from the image.
|
---|
61 | * Any subclass of Token that actually wants to return a non-null value can
|
---|
62 | * override this method as appropriate.
|
---|
63 | */
|
---|
64 | public Object getValue() {
|
---|
65 | return null;
|
---|
66 | }
|
---|
67 |
|
---|
68 | /**
|
---|
69 | * No-argument constructor
|
---|
70 | */
|
---|
71 | public Token() {}
|
---|
72 |
|
---|
73 | /**
|
---|
74 | * Constructs a new token for the specified Image.
|
---|
75 | */
|
---|
76 | public Token(int kind)
|
---|
77 | {
|
---|
78 | this(kind, null);
|
---|
79 | }
|
---|
80 |
|
---|
81 | /**
|
---|
82 | * Constructs a new token for the specified Image and Kind.
|
---|
83 | */
|
---|
84 | public Token(int kind, String image)
|
---|
85 | {
|
---|
86 | this.kind = kind;
|
---|
87 | this.image = image;
|
---|
88 | }
|
---|
89 |
|
---|
90 | /**
|
---|
91 | * Returns the image.
|
---|
92 | */
|
---|
93 | public String toString()
|
---|
94 | {
|
---|
95 | return image;
|
---|
96 | }
|
---|
97 |
|
---|
98 | /**
|
---|
99 | * Returns a new Token object, by default. However, if you want, you
|
---|
100 | * can create and return subclass objects based on the value of ofKind.
|
---|
101 | * Simply add the cases to the switch for all those special cases.
|
---|
102 | * For example, if you have a subclass of Token called IDToken that
|
---|
103 | * you want to create if ofKind is ID, simply add something like :
|
---|
104 | *
|
---|
105 | * case MyParserConstants.ID : return new IDToken(ofKind, image);
|
---|
106 | *
|
---|
107 | * to the following switch statement. Then you can cast matchedToken
|
---|
108 | * variable to the appropriate type and use sit in your lexical actions.
|
---|
109 | */
|
---|
110 | public static Token newToken(int ofKind, String image)
|
---|
111 | {
|
---|
112 | switch(ofKind)
|
---|
113 | {
|
---|
114 | default : return new Token(ofKind, image);
|
---|
115 | }
|
---|
116 | }
|
---|
117 |
|
---|
118 | public static Token newToken(int ofKind)
|
---|
119 | {
|
---|
120 | return newToken(ofKind, null);
|
---|
121 | }
|
---|
122 |
|
---|
123 | }
|
---|
124 | /* JavaCC - OriginalChecksum=2700a5d4bead55b977510f47df3d1aa9 (do not edit this line) */
|
---|