31{
33
34
36 ;
37
38
40 {
43 }
44
45 const size_t startPos =
m_pos;
46 const wxUniChar curCh =
curChar();
48
49 if( curCh == '(' )
50 {
53 }
54 else if( curCh == ')' )
55 {
58 }
59 else if( curCh == '*' )
60 {
63 }
64 else if( curCh == '/' )
65 {
68 }
69 else if( curCh == '=' )
70 {
73 }
74 else if( curCh == '<' )
75 {
76 if( nextCh == '=' )
77 {
80 }
81 else if( nextCh == '>' )
82 {
85 }
86 else
87 {
89 }
91 }
92 else if( curCh == '>' )
93 {
94 if( nextCh == '=' )
95 {
98 }
99 else
100 {
102 }
104 }
105 else if( curCh == '&' && nextCh == '&' )
106 {
110 }
111 else if( curCh == '|' && nextCh == '|' )
112 {
116 }
117 else if( curCh == '\'' )
118 {
119 std::cout << "start const string" << std::endl;
120 wxString constString;
121 while(
m_it !=
m_expr.end() && nextCh !=
'\'' )
122 {
123 constString += nextCh;
125 }
126 std::cout << "end const string: " << constString << std::endl;
127
129 {
131 }
132
135 }
136 else if( curCh == '+' && !wxIsdigit( nextCh ) )
137 {
140 }
141 else if( curCh == '-' && !wxIsdigit( nextCh ) )
142 {
145 }
146 else if( curCh == '+' || curCh == '-' || wxIsdigit( curCh ) )
147 {
148 wxString digitString = curCh;
149 while( wxIsdigit( nextCh ) )
150 {
151 digitString += nextCh;
153 }
154
155 long value;
156 digitString.ToLong( &value );
157
160 }
161 else
162 {
163 wxString identString = curCh;
164 while( wxIsalnum( nextCh ) )
165 {
166 identString += nextCh;
168 }
169
170 if( identString.IsSameAs( wxT( "True" ), false ) )
171 {
173 }
174 else if( identString.IsSameAs( wxT( "False" ), false ) )
175 {
177 }
178 else if( identString.IsSameAs( wxT( "Div" ), false ) )
179 {
181 }
182 else if( identString.IsSameAs( wxT( "Mod" ), false ) )
183 {
185 }
186 else if( identString.IsSameAs( wxT( "And" ), false ) )
187 {
189 }
190 else if( identString.IsSameAs( wxT( "Or" ), false ) )
191 {
193 }
194 else if( identString.IsSameAs( wxT( "Xor" ), false ) )
195 {
197 }
198 else if( identString.IsSameAs( wxT( "Not" ), false ) )
199 {
201 }
202 else if( identString.IsSameAs( wxT( "Between" ), false ) )
203 {
205 }
206 else if( identString.IsSameAs( wxT( "Like" ), false ) )
207 {
209 }
210 else
211 {
213 }
214
216 }
217}
ALTIUM_RULE_TOKEN m_currentToken
ALTIUM_RULE_TOKEN m_nextToken