1 | /*
|
---|
2 | * 01/28/2009
|
---|
3 | *
|
---|
4 | * PHPTokenMaker.java - Generates tokens for PHP syntax highlighting.
|
---|
5 | *
|
---|
6 | * This library is distributed under a modified BSD license. See the included
|
---|
7 | * RSyntaxTextArea.License.txt file for details.
|
---|
8 | */
|
---|
9 | package org.fife.ui.rsyntaxtextarea.modes;
|
---|
10 |
|
---|
11 | import java.io.*;
|
---|
12 | import javax.swing.text.Segment;
|
---|
13 |
|
---|
14 | import org.fife.ui.rsyntaxtextarea.*;
|
---|
15 |
|
---|
16 |
|
---|
17 | /**
|
---|
18 | * Scanner for PHP files.
|
---|
19 | *
|
---|
20 | * This implementation was created using
|
---|
21 | * <a href="http://www.jflex.de/">JFlex</a> 1.4.1; however, the generated file
|
---|
22 | * was modified for performance. Memory allocation needs to be almost
|
---|
23 | * completely removed to be competitive with the handwritten lexers (subclasses
|
---|
24 | * of <code>AbstractTokenMaker</code>, so this class has been modified so that
|
---|
25 | * Strings are never allocated (via yytext()), and the scanner never has to
|
---|
26 | * worry about refilling its buffer (needlessly copying chars around).
|
---|
27 | * We can achieve this because RText always scans exactly 1 line of tokens at a
|
---|
28 | * time, and hands the scanner this line as an array of characters (a Segment
|
---|
29 | * really). Since tokens contain pointers to char arrays instead of Strings
|
---|
30 | * holding their contents, there is no need for allocating new memory for
|
---|
31 | * Strings.<p>
|
---|
32 | *
|
---|
33 | * The actual algorithm generated for scanning has, of course, not been
|
---|
34 | * modified.<p>
|
---|
35 | *
|
---|
36 | * If you wish to regenerate this file yourself, keep in mind the following:
|
---|
37 | * <ul>
|
---|
38 | * <li>The generated PHPTokenMaker.java</code> file will contain two
|
---|
39 | * definitions of both <code>zzRefill</code> and <code>yyreset</code>.
|
---|
40 | * You should hand-delete the second of each definition (the ones
|
---|
41 | * generated by the lexer), as these generated methods modify the input
|
---|
42 | * buffer, which we'll never have to do.</li>
|
---|
43 | * <li>You should also change the declaration/definition of zzBuffer to NOT
|
---|
44 | * be initialized. This is a needless memory allocation for us since we
|
---|
45 | * will be pointing the array somewhere else anyway.</li>
|
---|
46 | * <li>You should NOT call <code>yylex()</code> on the generated scanner
|
---|
47 | * directly; rather, you should use <code>getTokenList</code> as you would
|
---|
48 | * with any other <code>TokenMaker</code> instance.</li>
|
---|
49 | * </ul>
|
---|
50 | *
|
---|
51 | * @author Robert Futrell
|
---|
52 | * @version 0.8
|
---|
53 | *
|
---|
54 | */
|
---|
55 | %%
|
---|
56 |
|
---|
57 | %public
|
---|
58 | %class PHPTokenMaker
|
---|
59 | %extends AbstractMarkupTokenMaker
|
---|
60 | %unicode
|
---|
61 | %type org.fife.ui.rsyntaxtextarea.Token
|
---|
62 |
|
---|
63 |
|
---|
64 | %{
|
---|
65 |
|
---|
66 | /**
|
---|
67 | * Type specific to PHPTokenMaker denoting a line ending with an unclosed
|
---|
68 | * double-quote attribute.
|
---|
69 | */
|
---|
70 | public static final int INTERNAL_ATTR_DOUBLE = -1;
|
---|
71 |
|
---|
72 |
|
---|
73 | /**
|
---|
74 | * Type specific to PHPTokenMaker denoting a line ending with an unclosed
|
---|
75 | * single-quote attribute.
|
---|
76 | */
|
---|
77 | public static final int INTERNAL_ATTR_SINGLE = -2;
|
---|
78 |
|
---|
79 |
|
---|
80 | /**
|
---|
81 | * Token type specific to PHPTokenMaker; this signals that the user has
|
---|
82 | * ended a line with an unclosed HTML tag; thus a new line is beginning
|
---|
83 | * still inside of the tag.
|
---|
84 | */
|
---|
85 | public static final int INTERNAL_INTAG = -3;
|
---|
86 |
|
---|
87 | /**
|
---|
88 | * Token type specific to PHPTokenMaker; this signals that the user has
|
---|
89 | * ended a line with an unclosed <code><script></code> tag.
|
---|
90 | */
|
---|
91 | public static final int INTERNAL_INTAG_SCRIPT = -4;
|
---|
92 |
|
---|
93 | /**
|
---|
94 | * Token type specifying we're in a double-qouted attribute in a
|
---|
95 | * script tag.
|
---|
96 | */
|
---|
97 | public static final int INTERNAL_ATTR_DOUBLE_QUOTE_SCRIPT = -5;
|
---|
98 |
|
---|
99 | /**
|
---|
100 | * Token type specifying we're in a single-qouted attribute in a
|
---|
101 | * script tag.
|
---|
102 | */
|
---|
103 | public static final int INTERNAL_ATTR_SINGLE_QUOTE_SCRIPT = -6;
|
---|
104 |
|
---|
105 | /**
|
---|
106 | * Token type specifying we're in JavaScript.
|
---|
107 | */
|
---|
108 | public static final int INTERNAL_IN_JS = -7;
|
---|
109 |
|
---|
110 | /**
|
---|
111 | * Token type specifying we're in a JavaScript multiline comment.
|
---|
112 | */
|
---|
113 | public static final int INTERNAL_IN_JS_MLC = -8;
|
---|
114 |
|
---|
115 | /**
|
---|
116 | * Token type specifying we're in an invalid multi-line JS string.
|
---|
117 | */
|
---|
118 | public static final int INTERNAL_IN_JS_STRING_INVALID = -9;
|
---|
119 |
|
---|
120 | /**
|
---|
121 | * Token type specifying we're in a valid multi-line JS string.
|
---|
122 | */
|
---|
123 | public static final int INTERNAL_IN_JS_STRING_VALID = -10;
|
---|
124 |
|
---|
125 | /**
|
---|
126 | * Token type specifying we're in an invalid multi-line JS single-quoted string.
|
---|
127 | */
|
---|
128 | public static final int INTERNAL_IN_JS_CHAR_INVALID = -11;
|
---|
129 |
|
---|
130 | /**
|
---|
131 | * Token type specifying we're in a valid multi-line JS single-quoted string.
|
---|
132 | */
|
---|
133 | public static final int INTERNAL_IN_JS_CHAR_VALID = -12;
|
---|
134 |
|
---|
135 | /**
|
---|
136 | * Token type specifying we're in PHP.
|
---|
137 | */
|
---|
138 | public static final int INTERNAL_IN_PHP = -(1<<11);
|
---|
139 |
|
---|
140 | /**
|
---|
141 | * Token type specifying we're in a PHP multiline comment.
|
---|
142 | */
|
---|
143 | public static final int INTERNAL_IN_PHP_MLC = -(2<<11);
|
---|
144 |
|
---|
145 | /**
|
---|
146 | * Token type specifying we're in a PHP multiline string.
|
---|
147 | */
|
---|
148 | public static final int INTERNAL_IN_PHP_STRING = -(3<<11);
|
---|
149 |
|
---|
150 | /**
|
---|
151 | * Token type specifying we're in a PHP multiline char.
|
---|
152 | */
|
---|
153 | public static final int INTERNAL_IN_PHP_CHAR = -(4<<11);
|
---|
154 |
|
---|
155 | /**
|
---|
156 | * Whether closing markup tags are automatically completed for PHP.
|
---|
157 | */
|
---|
158 | private static boolean completeCloseTags;
|
---|
159 |
|
---|
160 | /**
|
---|
161 | * The state PHP was started in (YYINITIAL, INTERNAL_IN_JS, etc.).
|
---|
162 | */
|
---|
163 | private int phpInState;
|
---|
164 |
|
---|
165 | /**
|
---|
166 | * When in the JS_STRING state, whether the current string is valid.
|
---|
167 | */
|
---|
168 | private boolean validJSString;
|
---|
169 |
|
---|
170 |
|
---|
171 | /**
|
---|
172 | * Constructor. This must be here because JFlex does not generate a
|
---|
173 | * no-parameter constructor.
|
---|
174 | */
|
---|
175 | public PHPTokenMaker() {
|
---|
176 | super();
|
---|
177 | }
|
---|
178 |
|
---|
179 |
|
---|
180 | /**
|
---|
181 | * Adds the token specified to the current linked list of tokens as an
|
---|
182 | * "end token;" that is, at <code>zzMarkedPos</code>.
|
---|
183 | *
|
---|
184 | * @param tokenType The token's type.
|
---|
185 | */
|
---|
186 | private void addEndToken(int tokenType) {
|
---|
187 | addToken(zzMarkedPos,zzMarkedPos, tokenType);
|
---|
188 | }
|
---|
189 |
|
---|
190 |
|
---|
191 | /**
|
---|
192 | * Adds the token specified to the current linked list of tokens.
|
---|
193 | *
|
---|
194 | * @param tokenType The token's type.
|
---|
195 | * @see #addToken(int, int, int)
|
---|
196 | */
|
---|
197 | private void addHyperlinkToken(int start, int end, int tokenType) {
|
---|
198 | int so = start + offsetShift;
|
---|
199 | addToken(zzBuffer, start,end, tokenType, so, true);
|
---|
200 | }
|
---|
201 |
|
---|
202 |
|
---|
203 | /**
|
---|
204 | * Adds the token specified to the current linked list of tokens.
|
---|
205 | *
|
---|
206 | * @param tokenType The token's type.
|
---|
207 | */
|
---|
208 | private void addToken(int tokenType) {
|
---|
209 | addToken(zzStartRead, zzMarkedPos-1, tokenType);
|
---|
210 | }
|
---|
211 |
|
---|
212 |
|
---|
213 | /**
|
---|
214 | * Adds the token specified to the current linked list of tokens.
|
---|
215 | *
|
---|
216 | * @param tokenType The token's type.
|
---|
217 | */
|
---|
218 | private void addToken(int start, int end, int tokenType) {
|
---|
219 | int so = start + offsetShift;
|
---|
220 | addToken(zzBuffer, start,end, tokenType, so);
|
---|
221 | }
|
---|
222 |
|
---|
223 |
|
---|
224 | /**
|
---|
225 | * Adds the token specified to the current linked list of tokens.
|
---|
226 | *
|
---|
227 | * @param array The character array.
|
---|
228 | * @param start The starting offset in the array.
|
---|
229 | * @param end The ending offset in the array.
|
---|
230 | * @param tokenType The token's type.
|
---|
231 | * @param startOffset The offset in the document at which this token
|
---|
232 | * occurs.
|
---|
233 | */
|
---|
234 | public void addToken(char[] array, int start, int end, int tokenType, int startOffset) {
|
---|
235 | super.addToken(array, start,end, tokenType, startOffset);
|
---|
236 | zzStartRead = zzMarkedPos;
|
---|
237 | }
|
---|
238 |
|
---|
239 |
|
---|
240 | /**
|
---|
241 | * Sets whether markup close tags should be completed. You might not want
|
---|
242 | * this to be the case, since some tags in standard HTML aren't usually
|
---|
243 | * closed.
|
---|
244 | *
|
---|
245 | * @return Whether closing markup tags are completed.
|
---|
246 | * @see #setCompleteCloseTags(boolean)
|
---|
247 | */
|
---|
248 | public boolean getCompleteCloseTags() {
|
---|
249 | return completeCloseTags;
|
---|
250 | }
|
---|
251 |
|
---|
252 |
|
---|
253 | /**
|
---|
254 | * {@inheritDoc}
|
---|
255 | */
|
---|
256 | public boolean getMarkOccurrencesOfTokenType(int type) {
|
---|
257 | return type==Token.FUNCTION || type==Token.VARIABLE;
|
---|
258 | }
|
---|
259 |
|
---|
260 |
|
---|
261 | /**
|
---|
262 | * Returns the first token in the linked list of tokens generated
|
---|
263 | * from <code>text</code>. This method must be implemented by
|
---|
264 | * subclasses so they can correctly implement syntax highlighting.
|
---|
265 | *
|
---|
266 | * @param text The text from which to get tokens.
|
---|
267 | * @param initialTokenType The token type we should start with.
|
---|
268 | * @param startOffset The offset into the document at which
|
---|
269 | * <code>text</code> starts.
|
---|
270 | * @return The first <code>Token</code> in a linked list representing
|
---|
271 | * the syntax highlighted text.
|
---|
272 | */
|
---|
273 | public Token getTokenList(Segment text, int initialTokenType, int startOffset) {
|
---|
274 |
|
---|
275 | resetTokenList();
|
---|
276 | this.offsetShift = -text.offset + startOffset;
|
---|
277 | phpInState = YYINITIAL; // Shouldn't be necessary
|
---|
278 |
|
---|
279 | // Start off in the proper state.
|
---|
280 | int state = Token.NULL;
|
---|
281 | switch (initialTokenType) {
|
---|
282 | case Token.COMMENT_MULTILINE:
|
---|
283 | state = COMMENT;
|
---|
284 | start = text.offset;
|
---|
285 | break;
|
---|
286 | case Token.VARIABLE:
|
---|
287 | state = DTD;
|
---|
288 | start = text.offset;
|
---|
289 | break;
|
---|
290 | case INTERNAL_INTAG:
|
---|
291 | state = INTAG;
|
---|
292 | start = text.offset;
|
---|
293 | break;
|
---|
294 | case INTERNAL_INTAG_SCRIPT:
|
---|
295 | state = INTAG_SCRIPT;
|
---|
296 | start = text.offset;
|
---|
297 | break;
|
---|
298 | case INTERNAL_ATTR_DOUBLE:
|
---|
299 | state = INATTR_DOUBLE;
|
---|
300 | start = text.offset;
|
---|
301 | break;
|
---|
302 | case INTERNAL_ATTR_SINGLE:
|
---|
303 | state = INATTR_SINGLE;
|
---|
304 | start = text.offset;
|
---|
305 | break;
|
---|
306 | case INTERNAL_ATTR_DOUBLE_QUOTE_SCRIPT:
|
---|
307 | state = INATTR_DOUBLE_SCRIPT;
|
---|
308 | start = text.offset;
|
---|
309 | break;
|
---|
310 | case INTERNAL_ATTR_SINGLE_QUOTE_SCRIPT:
|
---|
311 | state = INATTR_SINGLE_SCRIPT;
|
---|
312 | start = text.offset;
|
---|
313 | break;
|
---|
314 | case INTERNAL_IN_JS:
|
---|
315 | state = JAVASCRIPT;
|
---|
316 | start = text.offset;
|
---|
317 | break;
|
---|
318 | case INTERNAL_IN_JS_MLC:
|
---|
319 | state = JS_MLC;
|
---|
320 | start = text.offset;
|
---|
321 | break;
|
---|
322 | case INTERNAL_IN_JS_STRING_INVALID:
|
---|
323 | state = JS_STRING;
|
---|
324 | validJSString = false;
|
---|
325 | start = text.offset;
|
---|
326 | break;
|
---|
327 | case INTERNAL_IN_JS_STRING_VALID:
|
---|
328 | state = JS_STRING;
|
---|
329 | validJSString = true;
|
---|
330 | start = text.offset;
|
---|
331 | break;
|
---|
332 | case INTERNAL_IN_JS_CHAR_INVALID:
|
---|
333 | state = JS_CHAR;
|
---|
334 | validJSString = false;
|
---|
335 | start = text.offset;
|
---|
336 | break;
|
---|
337 | case INTERNAL_IN_JS_CHAR_VALID:
|
---|
338 | state = JS_CHAR;
|
---|
339 | validJSString = true;
|
---|
340 | start = text.offset;
|
---|
341 | break;
|
---|
342 | default:
|
---|
343 | if (initialTokenType<-1024) { // INTERNAL_IN_PHPxxx - phpInState
|
---|
344 | int main = -(-initialTokenType & 0xffffff00);
|
---|
345 | switch (main) {
|
---|
346 | default: // Should never happen
|
---|
347 | case INTERNAL_IN_PHP:
|
---|
348 | state = PHP;
|
---|
349 | start = text.offset;
|
---|
350 | break;
|
---|
351 | case INTERNAL_IN_PHP_MLC:
|
---|
352 | state = PHP_MLC;
|
---|
353 | start = text.offset;
|
---|
354 | break;
|
---|
355 | case INTERNAL_IN_PHP_STRING:
|
---|
356 | state = PHP_STRING;
|
---|
357 | start = text.offset;
|
---|
358 | break;
|
---|
359 | case INTERNAL_IN_PHP_CHAR:
|
---|
360 | state = PHP_CHAR;
|
---|
361 | start = text.offset;
|
---|
362 | break;
|
---|
363 | }
|
---|
364 | phpInState = -initialTokenType&0xff;
|
---|
365 | }
|
---|
366 | else {
|
---|
367 | state = Token.NULL;
|
---|
368 | }
|
---|
369 | break;
|
---|
370 | }
|
---|
371 |
|
---|
372 | s = text;
|
---|
373 | try {
|
---|
374 | yyreset(zzReader);
|
---|
375 | yybegin(state);
|
---|
376 | return yylex();
|
---|
377 | } catch (IOException ioe) {
|
---|
378 | ioe.printStackTrace();
|
---|
379 | return new DefaultToken();
|
---|
380 | }
|
---|
381 |
|
---|
382 | }
|
---|
383 |
|
---|
384 |
|
---|
385 | /**
|
---|
386 | * Sets whether markup close tags should be completed. You might not want
|
---|
387 | * this to be the case, since some tags in standard HTML aren't usually
|
---|
388 | * closed.
|
---|
389 | *
|
---|
390 | * @param complete Whether closing markup tags are completed.
|
---|
391 | * @see #getCompleteCloseTags()
|
---|
392 | */
|
---|
393 | public static void setCompleteCloseTags(boolean complete) {
|
---|
394 | completeCloseTags = complete;
|
---|
395 | }
|
---|
396 |
|
---|
397 |
|
---|
398 | /**
|
---|
399 | * Refills the input buffer.
|
---|
400 | *
|
---|
401 | * @return <code>true</code> if EOF was reached, otherwise
|
---|
402 | * <code>false</code>.
|
---|
403 | */
|
---|
404 | private boolean zzRefill() {
|
---|
405 | return zzCurrentPos>=s.offset+s.count;
|
---|
406 | }
|
---|
407 |
|
---|
408 |
|
---|
409 | /**
|
---|
410 | * Resets the scanner to read from a new input stream.
|
---|
411 | * Does not close the old reader.
|
---|
412 | *
|
---|
413 | * All internal variables are reset, the old input stream
|
---|
414 | * <b>cannot</b> be reused (internal buffer is discarded and lost).
|
---|
415 | * Lexical state is set to <tt>YY_INITIAL</tt>.
|
---|
416 | *
|
---|
417 | * @param reader the new input stream
|
---|
418 | */
|
---|
419 | public final void yyreset(java.io.Reader reader) {
|
---|
420 | // 's' has been updated.
|
---|
421 | zzBuffer = s.array;
|
---|
422 | /*
|
---|
423 | * We replaced the line below with the two below it because zzRefill
|
---|
424 | * no longer "refills" the buffer (since the way we do it, it's always
|
---|
425 | * "full" the first time through, since it points to the segment's
|
---|
426 | * array). So, we assign zzEndRead here.
|
---|
427 | */
|
---|
428 | //zzStartRead = zzEndRead = s.offset;
|
---|
429 | zzStartRead = s.offset;
|
---|
430 | zzEndRead = zzStartRead + s.count - 1;
|
---|
431 | zzCurrentPos = zzMarkedPos = zzPushbackPos = s.offset;
|
---|
432 | zzLexicalState = YYINITIAL;
|
---|
433 | zzReader = reader;
|
---|
434 | zzAtBOL = true;
|
---|
435 | zzAtEOF = false;
|
---|
436 | }
|
---|
437 |
|
---|
438 |
|
---|
439 | %}
|
---|
440 |
|
---|
441 | // HTML-specific stuff.
|
---|
442 | Whitespace = ([ \t\f]+)
|
---|
443 | LineTerminator = ([\n])
|
---|
444 | Identifier = ([^ \t\n<&]+)
|
---|
445 | AmperItem = ([&][^; \t]*[;]?)
|
---|
446 | InTagIdentifier = ([^ \t\n\"\'/=>]+)
|
---|
447 | EndScriptTag = ("</" [sS][cC][rR][iI][pP][tT] ">")
|
---|
448 |
|
---|
449 |
|
---|
450 | // JavaScript stuff.
|
---|
451 | Letter = [A-Za-z]
|
---|
452 | NonzeroDigit = [1-9]
|
---|
453 | Digit = ("0"|{NonzeroDigit})
|
---|
454 | HexDigit = ({Digit}|[A-Fa-f])
|
---|
455 | OctalDigit = ([0-7])
|
---|
456 | EscapedSourceCharacter = ("u"{HexDigit}{HexDigit}{HexDigit}{HexDigit})
|
---|
457 | NonSeparator = ([^\t\f\r\n\ \(\)\{\}\[\]\;\,\.\=\>\<\!\~\?\:\+\-\*\/\&\|\^\%\"\']|"#"|"\\")
|
---|
458 | IdentifierStart = ({Letter}|"_"|"$")
|
---|
459 | IdentifierPart = ({IdentifierStart}|{Digit}|("\\"{EscapedSourceCharacter}))
|
---|
460 | JS_MLCBegin = "/*"
|
---|
461 | JS_MLCEnd = "*/"
|
---|
462 | JS_LineCommentBegin = "//"
|
---|
463 | JS_IntegerHelper1 = (({NonzeroDigit}{Digit}*)|"0")
|
---|
464 | JS_IntegerHelper2 = ("0"(([xX]{HexDigit}+)|({OctalDigit}*)))
|
---|
465 | JS_IntegerLiteral = ({JS_IntegerHelper1}[lL]?)
|
---|
466 | JS_HexLiteral = ({JS_IntegerHelper2}[lL]?)
|
---|
467 | JS_FloatHelper1 = ([fFdD]?)
|
---|
468 | JS_FloatHelper2 = ([eE][+-]?{Digit}+{JS_FloatHelper1})
|
---|
469 | JS_FloatLiteral1 = ({Digit}+"."({JS_FloatHelper1}|{JS_FloatHelper2}|{Digit}+({JS_FloatHelper1}|{JS_FloatHelper2})))
|
---|
470 | JS_FloatLiteral2 = ("."{Digit}+({JS_FloatHelper1}|{JS_FloatHelper2}))
|
---|
471 | JS_FloatLiteral3 = ({Digit}+{JS_FloatHelper2})
|
---|
472 | JS_FloatLiteral = ({JS_FloatLiteral1}|{JS_FloatLiteral2}|{JS_FloatLiteral3}|({Digit}+[fFdD]))
|
---|
473 | JS_ErrorNumberFormat = (({JS_IntegerLiteral}|{JS_HexLiteral}|{JS_FloatLiteral}){NonSeparator}+)
|
---|
474 | JS_Separator = ([\(\)\{\}\[\]\]])
|
---|
475 | JS_Separator2 = ([\;,.])
|
---|
476 | JS_NonAssignmentOperator = ("+"|"-"|"<="|"^"|"++"|"<"|"*"|">="|"%"|"--"|">"|"/"|"!="|"?"|">>"|"!"|"&"|"=="|":"|">>"|"~"|"|"|"&&"|">>>")
|
---|
477 | JS_AssignmentOperator = ("="|"-="|"*="|"/="|"|="|"&="|"^="|"+="|"%="|"<<="|">>="|">>>=")
|
---|
478 | JS_Operator = ({JS_NonAssignmentOperator}|{JS_AssignmentOperator})
|
---|
479 | JS_Identifier = ({IdentifierStart}{IdentifierPart}*)
|
---|
480 | JS_ErrorIdentifier = ({NonSeparator}+)
|
---|
481 | JS_Regex = ("/"([^\*\\/]|\\.)([^/\\]|\\.)*"/"[gim]*)
|
---|
482 | BooleanLiteral = ("true"|"false")
|
---|
483 |
|
---|
484 |
|
---|
485 | // PHP stuff (most PHP stuff is shared with JS for simplicity)
|
---|
486 | PHP_Start = ("<?""php"?)
|
---|
487 | LetterOrUnderscore = ({Letter}|[_])
|
---|
488 | LetterOrUnderscoreOrDigit = ({LetterOrUnderscore}|{Digit})
|
---|
489 | PHP_Variable = ("$"{LetterOrUnderscore}{LetterOrUnderscoreOrDigit}*)
|
---|
490 | PHP_LineCommentBegin = ("//"|[#])
|
---|
491 |
|
---|
492 | URLGenDelim = ([:\/\?#\[\]@])
|
---|
493 | URLSubDelim = ([\!\$&'\(\)\*\+,;=])
|
---|
494 | URLUnreserved = ({LetterOrUnderscoreOrDigit}|[\-\.\~])
|
---|
495 | URLCharacter = ({URLGenDelim}|{URLSubDelim}|{URLUnreserved}|[%])
|
---|
496 | URLCharacters = ({URLCharacter}*)
|
---|
497 | URLEndCharacter = ([\/\$]|{Letter}|{Digit})
|
---|
498 | URL = (((https?|f(tp|ile))"://"|"www.")({URLCharacters}{URLEndCharacter})?)
|
---|
499 |
|
---|
500 | %state COMMENT
|
---|
501 | %state DTD
|
---|
502 | %state INTAG
|
---|
503 | %state INTAG_CHECK_TAG_NAME
|
---|
504 | %state INATTR_DOUBLE
|
---|
505 | %state INATTR_SINGLE
|
---|
506 | %state INTAG_SCRIPT
|
---|
507 | %state INATTR_DOUBLE_SCRIPT
|
---|
508 | %state INATTR_SINGLE_SCRIPT
|
---|
509 | %state JAVASCRIPT
|
---|
510 | %state JS_CHAR
|
---|
511 | %state JS_STRING
|
---|
512 | %state JS_MLC
|
---|
513 | %state JS_EOL_COMMENT
|
---|
514 | %state PHP
|
---|
515 | %state PHP_MLC
|
---|
516 | %state PHP_STRING
|
---|
517 | %state PHP_CHAR
|
---|
518 |
|
---|
519 |
|
---|
520 | %%
|
---|
521 |
|
---|
522 | <YYINITIAL> {
|
---|
523 | "<!--" { start = zzMarkedPos-4; yybegin(COMMENT); }
|
---|
524 | "<"[sS][cC][rR][iI][pP][tT] {
|
---|
525 | addToken(zzStartRead,zzStartRead, Token.MARKUP_TAG_DELIMITER);
|
---|
526 | addToken(zzMarkedPos-6,zzMarkedPos-1, Token.MARKUP_TAG_NAME);
|
---|
527 | start = zzMarkedPos; yybegin(INTAG_SCRIPT);
|
---|
528 | }
|
---|
529 | "<!" { start = zzMarkedPos-2; yybegin(DTD); }
|
---|
530 | {PHP_Start} { addToken(Token.SEPARATOR); phpInState = zzLexicalState; yybegin(PHP); }
|
---|
531 | "<"({Letter}|{Digit})+ {
|
---|
532 | int count = yylength();
|
---|
533 | addToken(zzStartRead,zzStartRead, Token.MARKUP_TAG_DELIMITER);
|
---|
534 | zzMarkedPos -= (count-1); //yypushback(count-1);
|
---|
535 | yybegin(INTAG_CHECK_TAG_NAME);
|
---|
536 | }
|
---|
537 | "</"({Letter}|{Digit})+ {
|
---|
538 | int count = yylength();
|
---|
539 | addToken(zzStartRead,zzStartRead+1, Token.MARKUP_TAG_DELIMITER);
|
---|
540 | zzMarkedPos -= (count-2); //yypushback(count-2);
|
---|
541 | yybegin(INTAG_CHECK_TAG_NAME);
|
---|
542 | }
|
---|
543 | "<" { addToken(Token.MARKUP_TAG_DELIMITER); yybegin(INTAG); }
|
---|
544 | "</" { addToken(Token.MARKUP_TAG_DELIMITER); yybegin(INTAG); }
|
---|
545 | {LineTerminator} { addNullToken(); return firstToken; }
|
---|
546 | {Identifier} { addToken(Token.IDENTIFIER); } // Catches everything.
|
---|
547 | {AmperItem} { addToken(Token.DATA_TYPE); }
|
---|
548 | {Whitespace} { addToken(Token.WHITESPACE); }
|
---|
549 | <<EOF>> { addNullToken(); return firstToken; }
|
---|
550 | }
|
---|
551 |
|
---|
552 | <COMMENT> {
|
---|
553 | [^hwf\n\-]+ {}
|
---|
554 | {URL} { int temp=zzStartRead; addToken(start,zzStartRead-1, Token.COMMENT_MULTILINE); addHyperlinkToken(temp,zzMarkedPos-1, Token.COMMENT_MULTILINE); start = zzMarkedPos; }
|
---|
555 | [hwf] {}
|
---|
556 | {LineTerminator} { addToken(start,zzStartRead-1, Token.COMMENT_MULTILINE); return firstToken; }
|
---|
557 | "-->" { yybegin(YYINITIAL); addToken(start,zzStartRead+2, Token.COMMENT_MULTILINE); }
|
---|
558 | "-" {}
|
---|
559 | <<EOF>> { addToken(start,zzStartRead-1, Token.COMMENT_MULTILINE); return firstToken; }
|
---|
560 | }
|
---|
561 |
|
---|
562 | <DTD> {
|
---|
563 | [^\n>]+ {}
|
---|
564 | {LineTerminator} { addToken(start,zzStartRead-1, Token.VARIABLE); return firstToken; }
|
---|
565 | ">" { yybegin(YYINITIAL); addToken(start,zzStartRead, Token.VARIABLE); }
|
---|
566 | <<EOF>> { addToken(start,zzStartRead-1, Token.VARIABLE); return firstToken; }
|
---|
567 | }
|
---|
568 |
|
---|
569 | <INTAG_CHECK_TAG_NAME> {
|
---|
570 | [Aa] |
|
---|
571 | [aA][bB][bB][rR] |
|
---|
572 | [aA][cC][rR][oO][nN][yY][mM] |
|
---|
573 | [aA][dD][dD][rR][eE][sS][sS] |
|
---|
574 | [aA][pP][pP][lL][eE][tT] |
|
---|
575 | [aA][rR][eE][aA] |
|
---|
576 | [aA][rR][tT][iI][cC][lL][eE] |
|
---|
577 | [aA][sS][iI][dD][eE] |
|
---|
578 | [aA][uU][dD][iI][oO] |
|
---|
579 | [bB] |
|
---|
580 | [bB][aA][sS][eE] |
|
---|
581 | [bB][aA][sS][eE][fF][oO][nN][tT] |
|
---|
582 | [bB][dD][oO] |
|
---|
583 | [bB][gG][sS][oO][uU][nN][dD] |
|
---|
584 | [bB][iI][gG] |
|
---|
585 | [bB][lL][iI][nN][kK] |
|
---|
586 | [bB][lL][oO][cC][kK][qQ][uU][oO][tT][eE] |
|
---|
587 | [bB][oO][dD][yY] |
|
---|
588 | [bB][rR] |
|
---|
589 | [bB][uU][tT][tT][oO][nN] |
|
---|
590 | [cC][aA][nN][vV][aA][sS] |
|
---|
591 | [cC][aA][pP][tT][iI][oO][nN] |
|
---|
592 | [cC][eE][nN][tT][eE][rR] |
|
---|
593 | [cC][iI][tT][eE] |
|
---|
594 | [cC][oO][dD][eE] |
|
---|
595 | [cC][oO][lL] |
|
---|
596 | [cC][oO][lL][gG][rR][oO][uU][pP] |
|
---|
597 | [cC][oO][mM][mM][aA][nN][dD] |
|
---|
598 | [cC][oO][mM][mM][eE][nN][tT] |
|
---|
599 | [dD][dD] |
|
---|
600 | [dD][aA][tT][aA][gG][rR][iI][dD] |
|
---|
601 | [dD][aA][tT][aA][lL][iI][sS][tT] |
|
---|
602 | [dD][aA][tT][aA][tT][eE][mM][pP][lL][aA][tT][eE] |
|
---|
603 | [dD][eE][lL] |
|
---|
604 | [dD][eE][tT][aA][iI][lL][sS] |
|
---|
605 | [dD][fF][nN] |
|
---|
606 | [dD][iI][aA][lL][oO][gG] |
|
---|
607 | [dD][iI][rR] |
|
---|
608 | [dD][iI][vV] |
|
---|
609 | [dD][lL] |
|
---|
610 | [dD][tT] |
|
---|
611 | [eE][mM] |
|
---|
612 | [eE][mM][bB][eE][dD] |
|
---|
613 | [eE][vV][eE][nN][tT][sS][oO][uU][rR][cC][eE] |
|
---|
614 | [fF][iI][eE][lL][dD][sS][eE][tT] |
|
---|
615 | [fF][iI][gG][uU][rR][eE] |
|
---|
616 | [fF][oO][nN][tT] |
|
---|
617 | [fF][oO][oO][tT][eE][rR] |
|
---|
618 | [fF][oO][rR][mM] |
|
---|
619 | [fF][rR][aA][mM][eE] |
|
---|
620 | [fF][rR][aA][mM][eE][sS][eE][tT] |
|
---|
621 | [hH][123456] |
|
---|
622 | [hH][eE][aA][dD] |
|
---|
623 | [hH][eE][aA][dD][eE][rR] |
|
---|
624 | [hH][rR] |
|
---|
625 | [hH][tT][mM][lL] |
|
---|
626 | [iI] |
|
---|
627 | [iI][fF][rR][aA][mM][eE] |
|
---|
628 | [iI][lL][aA][yY][eE][rR] |
|
---|
629 | [iI][mM][gG] |
|
---|
630 | [iI][nN][pP][uU][tT] |
|
---|
631 | [iI][nN][sS] |
|
---|
632 | [iI][sS][iI][nN][dD][eE][xX] |
|
---|
633 | [kK][bB][dD] |
|
---|
634 | [kK][eE][yY][gG][eE][nN] |
|
---|
635 | [lL][aA][bB][eE][lL] |
|
---|
636 | [lL][aA][yY][eE][rR] |
|
---|
637 | [lL][eE][gG][eE][nN][dD] |
|
---|
638 | [lL][iI] |
|
---|
639 | [lL][iI][nN][kK] |
|
---|
640 | [mM][aA][pP] |
|
---|
641 | [mM][aA][rR][kK] |
|
---|
642 | [mM][aA][rR][qQ][uU][eE][eE] |
|
---|
643 | [mM][eE][nN][uU] |
|
---|
644 | [mM][eE][tT][aA] |
|
---|
645 | [mM][eE][tT][eE][rR] |
|
---|
646 | [mM][uU][lL][tT][iI][cC][oO][lL] |
|
---|
647 | [nN][aA][vV] |
|
---|
648 | [nN][eE][sS][tT] |
|
---|
649 | [nN][oO][bB][rR] |
|
---|
650 | [nN][oO][eE][mM][bB][eE][dD] |
|
---|
651 | [nN][oO][fF][rR][aA][mM][eE][sS] |
|
---|
652 | [nN][oO][lL][aA][yY][eE][rR] |
|
---|
653 | [nN][oO][sS][cC][rR][iI][pP][tT] |
|
---|
654 | [oO][bB][jJ][eE][cC][tT] |
|
---|
655 | [oO][lL] |
|
---|
656 | [oO][pP][tT][gG][rR][oO][uU][pP] |
|
---|
657 | [oO][pP][tT][iI][oO][nN] |
|
---|
658 | [oO][uU][tT][pP][uU][tT] |
|
---|
659 | [pP] |
|
---|
660 | [pP][aA][rR][aA][mM] |
|
---|
661 | [pP][lL][aA][iI][nN][tT][eE][xX][tT] |
|
---|
662 | [pP][rR][eE] |
|
---|
663 | [pP][rR][oO][gG][rR][eE][sS][sS] |
|
---|
664 | [qQ] |
|
---|
665 | [rR][uU][lL][eE] |
|
---|
666 | [sS] |
|
---|
667 | [sS][aA][mM][pP] |
|
---|
668 | [sS][cC][rR][iI][pP][tT] |
|
---|
669 | [sS][eE][cC][tT][iI][oO][nN] |
|
---|
670 | [sS][eE][lL][eE][cC][tT] |
|
---|
671 | [sS][eE][rR][vV][eE][rR] |
|
---|
672 | [sS][mM][aA][lL][lL] |
|
---|
673 | [sS][oO][uU][rR][cC][eE] |
|
---|
674 | [sS][pP][aA][cC][eE][rR] |
|
---|
675 | [sS][pP][aA][nN] |
|
---|
676 | [sS][tT][rR][iI][kK][eE] |
|
---|
677 | [sS][tT][rR][oO][nN][gG] |
|
---|
678 | [sS][tT][yY][lL][eE] |
|
---|
679 | [sS][uU][bB] |
|
---|
680 | [sS][uU][pP] |
|
---|
681 | [tT][aA][bB][lL][eE] |
|
---|
682 | [tT][bB][oO][dD][yY] |
|
---|
683 | [tT][dD] |
|
---|
684 | [tT][eE][xX][tT][aA][rR][eE][aA] |
|
---|
685 | [tT][fF][oO][oO][tT] |
|
---|
686 | [tT][hH] |
|
---|
687 | [tT][hH][eE][aA][dD] |
|
---|
688 | [tT][iI][mM][eE] |
|
---|
689 | [tT][iI][tT][lL][eE] |
|
---|
690 | [tT][rR] |
|
---|
691 | [tT][tT] |
|
---|
692 | [uU] |
|
---|
693 | [uU][lL] |
|
---|
694 | [vV][aA][rR] |
|
---|
695 | [vV][iI][dD][eE][oO] { addToken(Token.MARKUP_TAG_NAME); }
|
---|
696 | {InTagIdentifier} { /* A non-recognized HTML tag name */ yypushback(yylength()); yybegin(INTAG); }
|
---|
697 | . { /* Shouldn't happen */ yypushback(1); yybegin(INTAG); }
|
---|
698 | <<EOF>> { addToken(zzMarkedPos,zzMarkedPos, INTERNAL_INTAG); return firstToken; }
|
---|
699 | }
|
---|
700 |
|
---|
701 | <INTAG> {
|
---|
702 | {PHP_Start} { addToken(Token.SEPARATOR); phpInState = zzLexicalState; yybegin(PHP); }
|
---|
703 | "/" { addToken(Token.MARKUP_TAG_DELIMITER); }
|
---|
704 | {InTagIdentifier} { addToken(Token.MARKUP_TAG_ATTRIBUTE); }
|
---|
705 | {Whitespace} { addToken(Token.WHITESPACE); }
|
---|
706 | "=" { addToken(Token.OPERATOR); }
|
---|
707 | "/>" { yybegin(YYINITIAL); addToken(Token.MARKUP_TAG_DELIMITER); }
|
---|
708 | ">" { yybegin(YYINITIAL); addToken(Token.MARKUP_TAG_DELIMITER); }
|
---|
709 | [\"] { start = zzMarkedPos-1; yybegin(INATTR_DOUBLE); }
|
---|
710 | [\'] { start = zzMarkedPos-1; yybegin(INATTR_SINGLE); }
|
---|
711 | <<EOF>> { addToken(zzMarkedPos,zzMarkedPos, INTERNAL_INTAG); return firstToken; }
|
---|
712 | }
|
---|
713 |
|
---|
714 | <INATTR_DOUBLE> {
|
---|
715 | {PHP_Start} { int temp=zzStartRead; if (zzStartRead>start) addToken(start,zzStartRead-1, Token.MARKUP_TAG_ATTRIBUTE_VALUE); addToken(temp, zzMarkedPos-1, Token.SEPARATOR); phpInState = zzLexicalState; yybegin(PHP); }
|
---|
716 | [^\"<]* {}
|
---|
717 | "<" { /* Allowing "<?" and "<?php" to start PHP */ }
|
---|
718 | [\"] { addToken(start,zzStartRead, Token.MARKUP_TAG_ATTRIBUTE_VALUE); yybegin(INTAG); }
|
---|
719 | <<EOF>> { addToken(start,zzStartRead-1, Token.MARKUP_TAG_ATTRIBUTE_VALUE); addEndToken(INTERNAL_ATTR_DOUBLE); return firstToken; }
|
---|
720 | }
|
---|
721 |
|
---|
722 | <INATTR_SINGLE> {
|
---|
723 | {PHP_Start} { int temp=zzStartRead; if (zzStartRead>start) addToken(start,zzStartRead-1, Token.MARKUP_TAG_ATTRIBUTE_VALUE); addToken(temp, zzMarkedPos-1, Token.SEPARATOR); phpInState = zzLexicalState; yybegin(PHP); }
|
---|
724 | [^\'<]* {}
|
---|
725 | "<" { /* Allowing "<?" and "<?php" to start PHP */ }
|
---|
726 | [\'] { addToken(start,zzStartRead, Token.MARKUP_TAG_ATTRIBUTE_VALUE); yybegin(INTAG); }
|
---|
727 | <<EOF>> { addToken(start,zzStartRead-1, Token.MARKUP_TAG_ATTRIBUTE_VALUE); addEndToken(INTERNAL_ATTR_SINGLE); return firstToken; }
|
---|
728 | }
|
---|
729 |
|
---|
730 | <INTAG_SCRIPT> {
|
---|
731 | {PHP_Start} { addToken(Token.SEPARATOR); phpInState = zzLexicalState; yybegin(PHP); }
|
---|
732 | {InTagIdentifier} { addToken(Token.MARKUP_TAG_ATTRIBUTE); }
|
---|
733 | "/>" { addToken(Token.MARKUP_TAG_DELIMITER); yybegin(YYINITIAL); }
|
---|
734 | "/" { addToken(Token.MARKUP_TAG_DELIMITER); } // Won't appear in valid HTML.
|
---|
735 | {Whitespace} { addToken(Token.WHITESPACE); }
|
---|
736 | "=" { addToken(Token.OPERATOR); }
|
---|
737 | ">" { yybegin(JAVASCRIPT); addToken(Token.MARKUP_TAG_DELIMITER); }
|
---|
738 | [\"] { start = zzMarkedPos-1; yybegin(INATTR_DOUBLE_SCRIPT); }
|
---|
739 | [\'] { start = zzMarkedPos-1; yybegin(INATTR_SINGLE_SCRIPT); }
|
---|
740 | <<EOF>> { addToken(zzMarkedPos,zzMarkedPos, INTERNAL_INTAG_SCRIPT); return firstToken; }
|
---|
741 | }
|
---|
742 |
|
---|
743 | <INATTR_DOUBLE_SCRIPT> {
|
---|
744 | {PHP_Start} { int temp=zzStartRead; if (zzStartRead>start) addToken(start,zzStartRead-1, Token.MARKUP_TAG_ATTRIBUTE_VALUE); addToken(temp, zzMarkedPos-1, Token.SEPARATOR); phpInState = zzLexicalState; yybegin(PHP); }
|
---|
745 | [^\"<]* {}
|
---|
746 | "<" { /* Allowing "<?" and "<?php" to start PHP */ }
|
---|
747 | [\"] { addToken(start,zzStartRead, Token.MARKUP_TAG_ATTRIBUTE_VALUE); yybegin(INTAG_SCRIPT); }
|
---|
748 | <<EOF>> { addToken(start,zzStartRead-1, Token.MARKUP_TAG_ATTRIBUTE_VALUE); addEndToken(INTERNAL_ATTR_DOUBLE_QUOTE_SCRIPT); return firstToken; }
|
---|
749 | }
|
---|
750 |
|
---|
751 | <INATTR_SINGLE_SCRIPT> {
|
---|
752 | {PHP_Start} { int temp=zzStartRead; if (zzStartRead>start) addToken(start,zzStartRead-1, Token.MARKUP_TAG_ATTRIBUTE_VALUE); addToken(temp, zzMarkedPos-1, Token.SEPARATOR); phpInState = zzLexicalState; yybegin(PHP); }
|
---|
753 | [^\'<]* {}
|
---|
754 | "<" { /* Allowing "<?" and "<?php" to start PHP */ }
|
---|
755 | [\'] { addToken(start,zzStartRead, Token.MARKUP_TAG_ATTRIBUTE_VALUE); yybegin(INTAG_SCRIPT); }
|
---|
756 | <<EOF>> { addToken(start,zzStartRead-1, Token.MARKUP_TAG_ATTRIBUTE_VALUE); addEndToken(INTERNAL_ATTR_SINGLE_QUOTE_SCRIPT); return firstToken; }
|
---|
757 | }
|
---|
758 |
|
---|
759 | <JAVASCRIPT> {
|
---|
760 |
|
---|
761 | {EndScriptTag} {
|
---|
762 | yybegin(YYINITIAL);
|
---|
763 | addToken(zzStartRead,zzStartRead+1, Token.MARKUP_TAG_DELIMITER);
|
---|
764 | addToken(zzMarkedPos-7,zzMarkedPos-2, Token.MARKUP_TAG_NAME);
|
---|
765 | addToken(zzMarkedPos-1,zzMarkedPos-1, Token.MARKUP_TAG_DELIMITER);
|
---|
766 | }
|
---|
767 |
|
---|
768 | // ECMA keywords.
|
---|
769 | "break" |
|
---|
770 | "continue" |
|
---|
771 | "delete" |
|
---|
772 | "else" |
|
---|
773 | "for" |
|
---|
774 | "function" |
|
---|
775 | "if" |
|
---|
776 | "in" |
|
---|
777 | "new" |
|
---|
778 | "return" |
|
---|
779 | "this" |
|
---|
780 | "typeof" |
|
---|
781 | "var" |
|
---|
782 | "void" |
|
---|
783 | "while" |
|
---|
784 | "with" { addToken(Token.RESERVED_WORD); }
|
---|
785 |
|
---|
786 | // Reserved (but not yet used) ECMA keywords.
|
---|
787 | "abstract" { addToken(Token.RESERVED_WORD); }
|
---|
788 | "boolean" { addToken(Token.DATA_TYPE); }
|
---|
789 | "byte" { addToken(Token.DATA_TYPE); }
|
---|
790 | "case" { addToken(Token.RESERVED_WORD); }
|
---|
791 | "catch" { addToken(Token.RESERVED_WORD); }
|
---|
792 | "char" { addToken(Token.DATA_TYPE); }
|
---|
793 | "class" { addToken(Token.RESERVED_WORD); }
|
---|
794 | "const" { addToken(Token.RESERVED_WORD); }
|
---|
795 | "debugger" { addToken(Token.RESERVED_WORD); }
|
---|
796 | "default" { addToken(Token.RESERVED_WORD); }
|
---|
797 | "do" { addToken(Token.RESERVED_WORD); }
|
---|
798 | "double" { addToken(Token.DATA_TYPE); }
|
---|
799 | "enum" { addToken(Token.RESERVED_WORD); }
|
---|
800 | "export" { addToken(Token.RESERVED_WORD); }
|
---|
801 | "extends" { addToken(Token.RESERVED_WORD); }
|
---|
802 | "final" { addToken(Token.RESERVED_WORD); }
|
---|
803 | "finally" { addToken(Token.RESERVED_WORD); }
|
---|
804 | "float" { addToken(Token.DATA_TYPE); }
|
---|
805 | "goto" { addToken(Token.RESERVED_WORD); }
|
---|
806 | "implements" { addToken(Token.RESERVED_WORD); }
|
---|
807 | "import" { addToken(Token.RESERVED_WORD); }
|
---|
808 | "instanceof" { addToken(Token.RESERVED_WORD); }
|
---|
809 | "int" { addToken(Token.DATA_TYPE); }
|
---|
810 | "interface" { addToken(Token.RESERVED_WORD); }
|
---|
811 | "long" { addToken(Token.DATA_TYPE); }
|
---|
812 | "native" { addToken(Token.RESERVED_WORD); }
|
---|
813 | "package" { addToken(Token.RESERVED_WORD); }
|
---|
814 | "private" { addToken(Token.RESERVED_WORD); }
|
---|
815 | "protected" { addToken(Token.RESERVED_WORD); }
|
---|
816 | "public" { addToken(Token.RESERVED_WORD); }
|
---|
817 | "short" { addToken(Token.DATA_TYPE); }
|
---|
818 | "static" { addToken(Token.RESERVED_WORD); }
|
---|
819 | "super" { addToken(Token.RESERVED_WORD); }
|
---|
820 | "switch" { addToken(Token.RESERVED_WORD); }
|
---|
821 | "synchronized" { addToken(Token.RESERVED_WORD); }
|
---|
822 | "throw" { addToken(Token.RESERVED_WORD); }
|
---|
823 | "throws" { addToken(Token.RESERVED_WORD); }
|
---|
824 | "transient" { addToken(Token.RESERVED_WORD); }
|
---|
825 | "try" { addToken(Token.RESERVED_WORD); }
|
---|
826 | "volatile" { addToken(Token.RESERVED_WORD); }
|
---|
827 | "null" { addToken(Token.RESERVED_WORD); }
|
---|
828 |
|
---|
829 | // Literals.
|
---|
830 | {BooleanLiteral} { addToken(Token.LITERAL_BOOLEAN); }
|
---|
831 | "NaN" { addToken(Token.RESERVED_WORD); }
|
---|
832 | "Infinity" { addToken(Token.RESERVED_WORD); }
|
---|
833 |
|
---|
834 | // Functions.
|
---|
835 | "eval" |
|
---|
836 | "parseInt" |
|
---|
837 | "parseFloat" |
|
---|
838 | "escape" |
|
---|
839 | "unescape" |
|
---|
840 | "isNaN" |
|
---|
841 | "isFinite" { addToken(Token.FUNCTION); }
|
---|
842 |
|
---|
843 | {LineTerminator} { addEndToken(INTERNAL_IN_JS); return firstToken; }
|
---|
844 | {JS_Identifier} { addToken(Token.IDENTIFIER); }
|
---|
845 | {Whitespace} { addToken(Token.WHITESPACE); }
|
---|
846 |
|
---|
847 | /* String/Character literals. */
|
---|
848 | [\'] { start = zzMarkedPos-1; validJSString = true; yybegin(JS_CHAR); }
|
---|
849 | [\"] { start = zzMarkedPos-1; validJSString = true; yybegin(JS_STRING); }
|
---|
850 |
|
---|
851 |
|
---|
852 | /* Comment literals. */
|
---|
853 | "/**/" { addToken(Token.COMMENT_MULTILINE); }
|
---|
854 | {JS_MLCBegin} { start = zzMarkedPos-2; yybegin(JS_MLC); }
|
---|
855 | {JS_LineCommentBegin} { start = zzMarkedPos-2; yybegin(JS_EOL_COMMENT); }
|
---|
856 |
|
---|
857 | /* Attempt to identify regular expressions (not foolproof) - do after comments! */
|
---|
858 | {JS_Regex} {
|
---|
859 | boolean highlightedAsRegex = false;
|
---|
860 | if (firstToken==null) {
|
---|
861 | addToken(Token.REGEX);
|
---|
862 | highlightedAsRegex = true;
|
---|
863 | }
|
---|
864 | else {
|
---|
865 | // If this is *likely* to be a regex, based on
|
---|
866 | // the previous token, highlight it as such.
|
---|
867 | Token t = firstToken.getLastNonCommentNonWhitespaceToken();
|
---|
868 | if (RSyntaxUtilities.regexCanFollowInJavaScript(t)) {
|
---|
869 | addToken(Token.REGEX);
|
---|
870 | highlightedAsRegex = true;
|
---|
871 | }
|
---|
872 | }
|
---|
873 | // If it doesn't *appear* to be a regex, highlight it as
|
---|
874 | // individual tokens.
|
---|
875 | if (!highlightedAsRegex) {
|
---|
876 | int temp = zzStartRead + 1;
|
---|
877 | addToken(zzStartRead, zzStartRead, Token.OPERATOR);
|
---|
878 | zzStartRead = zzCurrentPos = zzMarkedPos = temp;
|
---|
879 | }
|
---|
880 | }
|
---|
881 |
|
---|
882 | /* Separators. */
|
---|
883 | {JS_Separator} { addToken(Token.SEPARATOR); }
|
---|
884 | {JS_Separator2} { addToken(Token.IDENTIFIER); }
|
---|
885 |
|
---|
886 | {PHP_Start} { addToken(Token.SEPARATOR); phpInState = zzLexicalState; yybegin(PHP); }
|
---|
887 |
|
---|
888 | /* Operators. */
|
---|
889 | {JS_Operator} { addToken(Token.OPERATOR); }
|
---|
890 |
|
---|
891 | /* Numbers */
|
---|
892 | {JS_IntegerLiteral} { addToken(Token.LITERAL_NUMBER_DECIMAL_INT); }
|
---|
893 | {JS_HexLiteral} { addToken(Token.LITERAL_NUMBER_HEXADECIMAL); }
|
---|
894 | {JS_FloatLiteral} { addToken(Token.LITERAL_NUMBER_FLOAT); }
|
---|
895 | {JS_ErrorNumberFormat} { addToken(Token.ERROR_NUMBER_FORMAT); }
|
---|
896 |
|
---|
897 | {JS_ErrorIdentifier} { addToken(Token.ERROR_IDENTIFIER); }
|
---|
898 |
|
---|
899 | /* Ended with a line not in a string or comment. */
|
---|
900 | <<EOF>> { addEndToken(INTERNAL_IN_JS); return firstToken; }
|
---|
901 |
|
---|
902 | /* Catch any other (unhandled) characters and flag them as bad. */
|
---|
903 | . { addToken(Token.ERROR_IDENTIFIER); }
|
---|
904 |
|
---|
905 | }
|
---|
906 |
|
---|
907 |
|
---|
908 | <JS_STRING> {
|
---|
909 | [^\n\\\"]+ {}
|
---|
910 | \n { addToken(start,zzStartRead-1, Token.ERROR_STRING_DOUBLE); addEndToken(INTERNAL_IN_JS); return firstToken; }
|
---|
911 | \\x{HexDigit}{2} {}
|
---|
912 | \\x { /* Invalid latin-1 character \xXX */ validJSString = false; }
|
---|
913 | \\u{HexDigit}{4} {}
|
---|
914 | \\u { /* Invalid Unicode character \\uXXXX */ validJSString = false; }
|
---|
915 | \\. { /* Skip all escaped chars. */ }
|
---|
916 | \\ { /* Line ending in '\' => continue to next line. */
|
---|
917 | if (validJSString) {
|
---|
918 | addToken(start,zzStartRead, Token.LITERAL_STRING_DOUBLE_QUOTE);
|
---|
919 | addEndToken(INTERNAL_IN_JS_STRING_VALID);
|
---|
920 | }
|
---|
921 | else {
|
---|
922 | addToken(start,zzStartRead, Token.ERROR_STRING_DOUBLE);
|
---|
923 | addEndToken(INTERNAL_IN_JS_STRING_INVALID);
|
---|
924 | }
|
---|
925 | return firstToken;
|
---|
926 | }
|
---|
927 | \" { int type = validJSString ? Token.LITERAL_STRING_DOUBLE_QUOTE : Token.ERROR_STRING_DOUBLE; addToken(start,zzStartRead, type); yybegin(JAVASCRIPT); }
|
---|
928 | <<EOF>> { addToken(start,zzStartRead-1, Token.ERROR_STRING_DOUBLE); addEndToken(INTERNAL_IN_JS); return firstToken; }
|
---|
929 | }
|
---|
930 |
|
---|
931 | <JS_CHAR> {
|
---|
932 | [^\n\\\']+ {}
|
---|
933 | \n { addToken(start,zzStartRead-1, Token.ERROR_CHAR); addEndToken(INTERNAL_IN_JS); return firstToken; }
|
---|
934 | \\x{HexDigit}{2} {}
|
---|
935 | \\x { /* Invalid latin-1 character \xXX */ validJSString = false; }
|
---|
936 | \\u{HexDigit}{4} {}
|
---|
937 | \\u { /* Invalid Unicode character \\uXXXX */ validJSString = false; }
|
---|
938 | \\. { /* Skip all escaped chars. */ }
|
---|
939 | \\ { /* Line ending in '\' => continue to next line. */
|
---|
940 | if (validJSString) {
|
---|
941 | addToken(start,zzStartRead, Token.LITERAL_CHAR);
|
---|
942 | addEndToken(INTERNAL_IN_JS_CHAR_VALID);
|
---|
943 | }
|
---|
944 | else {
|
---|
945 | addToken(start,zzStartRead, Token.ERROR_CHAR);
|
---|
946 | addEndToken(INTERNAL_IN_JS_CHAR_INVALID);
|
---|
947 | }
|
---|
948 | return firstToken;
|
---|
949 | }
|
---|
950 | \' { int type = validJSString ? Token.LITERAL_CHAR : Token.ERROR_CHAR; addToken(start,zzStartRead, type); yybegin(JAVASCRIPT); }
|
---|
951 | <<EOF>> { addToken(start,zzStartRead-1, Token.ERROR_CHAR); addEndToken(INTERNAL_IN_JS); return firstToken; }
|
---|
952 | }
|
---|
953 |
|
---|
954 | <JS_MLC> {
|
---|
955 | // JavaScript MLC's. This state is essentially Java's MLC state.
|
---|
956 | [^hwf<\n\*]+ {}
|
---|
957 | {URL} { int temp=zzStartRead; addToken(start,zzStartRead-1, Token.COMMENT_MULTILINE); addHyperlinkToken(temp,zzMarkedPos-1, Token.COMMENT_MULTILINE); start = zzMarkedPos; }
|
---|
958 | [hwf] {}
|
---|
959 | {EndScriptTag} {
|
---|
960 | yybegin(YYINITIAL);
|
---|
961 | int temp = zzStartRead;
|
---|
962 | addToken(start,zzStartRead-1, Token.COMMENT_MULTILINE);
|
---|
963 | addToken(temp,temp+1, Token.MARKUP_TAG_DELIMITER);
|
---|
964 | addToken(zzMarkedPos-7,zzMarkedPos-2, Token.MARKUP_TAG_NAME);
|
---|
965 | addToken(zzMarkedPos-1,zzMarkedPos-1, Token.MARKUP_TAG_DELIMITER);
|
---|
966 | }
|
---|
967 | "<" {}
|
---|
968 | \n { addToken(start,zzStartRead-1, Token.COMMENT_MULTILINE); addEndToken(INTERNAL_IN_JS_MLC); return firstToken; }
|
---|
969 | {JS_MLCEnd} { yybegin(JAVASCRIPT); addToken(start,zzStartRead+1, Token.COMMENT_MULTILINE); }
|
---|
970 | \* {}
|
---|
971 | <<EOF>> { addToken(start,zzStartRead-1, Token.COMMENT_MULTILINE); addEndToken(INTERNAL_IN_JS_MLC); return firstToken; }
|
---|
972 | }
|
---|
973 |
|
---|
974 |
|
---|
975 | <JS_EOL_COMMENT> {
|
---|
976 | [^hwf<\n]+ {}
|
---|
977 | {URL} { int temp=zzStartRead; addToken(start,zzStartRead-1, Token.COMMENT_EOL); addHyperlinkToken(temp,zzMarkedPos-1, Token.COMMENT_EOL); start = zzMarkedPos; }
|
---|
978 | [hwf] {}
|
---|
979 | {EndScriptTag} {
|
---|
980 | yybegin(YYINITIAL);
|
---|
981 | int temp = zzStartRead;
|
---|
982 | addToken(start,zzStartRead-1, Token.COMMENT_EOL);
|
---|
983 | addToken(temp,temp+1, Token.MARKUP_TAG_DELIMITER);
|
---|
984 | addToken(zzMarkedPos-7,zzMarkedPos-2, Token.MARKUP_TAG_NAME);
|
---|
985 | addToken(zzMarkedPos-1,zzMarkedPos-1, Token.MARKUP_TAG_DELIMITER);
|
---|
986 | }
|
---|
987 | "<" {}
|
---|
988 | \n { addToken(start,zzStartRead-1, Token.COMMENT_EOL); addEndToken(INTERNAL_IN_JS); return firstToken; }
|
---|
989 | <<EOF>> { addToken(start,zzStartRead-1, Token.COMMENT_EOL); addEndToken(INTERNAL_IN_JS); return firstToken; }
|
---|
990 |
|
---|
991 | }
|
---|
992 |
|
---|
993 |
|
---|
994 | <PHP> {
|
---|
995 |
|
---|
996 | "?>" { addToken(Token.SEPARATOR); start = zzMarkedPos; yybegin(phpInState); }
|
---|
997 |
|
---|
998 | /* Error control operator */
|
---|
999 | ("@"{JS_Identifier}) {
|
---|
1000 | int count = yylength();
|
---|
1001 | addToken(zzStartRead,zzStartRead, Token.FUNCTION);
|
---|
1002 | zzMarkedPos -= (count-1); //yypushback(count-1);
|
---|
1003 | }
|
---|
1004 |
|
---|
1005 | /* Keywords */
|
---|
1006 | "__CLASS__" |
|
---|
1007 | "__DIR__" |
|
---|
1008 | "__FILE__" |
|
---|
1009 | "__FUNCTION__" |
|
---|
1010 | "__METHOD__" |
|
---|
1011 | "__NAMESPACE__" |
|
---|
1012 | "abstract" |
|
---|
1013 | "and" |
|
---|
1014 | "array" |
|
---|
1015 | "as" |
|
---|
1016 | "break" |
|
---|
1017 | "case" |
|
---|
1018 | "catch" |
|
---|
1019 | "cfunction" |
|
---|
1020 | "class" |
|
---|
1021 | "clone" |
|
---|
1022 | "const" |
|
---|
1023 | "continue" |
|
---|
1024 | "declare" |
|
---|
1025 | "default" |
|
---|
1026 | "die" |
|
---|
1027 | "do" |
|
---|
1028 | "echo" |
|
---|
1029 | "else" |
|
---|
1030 | "elseif" |
|
---|
1031 | "empty" |
|
---|
1032 | "enddeclare" |
|
---|
1033 | "endfor" |
|
---|
1034 | "endforeach" |
|
---|
1035 | "endif" |
|
---|
1036 | "endswitch" |
|
---|
1037 | "endwhile" |
|
---|
1038 | "eval" |
|
---|
1039 | "exit" |
|
---|
1040 | "extends" |
|
---|
1041 | "final" |
|
---|
1042 | "for" |
|
---|
1043 | "foreach" |
|
---|
1044 | "function" |
|
---|
1045 | "global" |
|
---|
1046 | "goto" |
|
---|
1047 | "if" |
|
---|
1048 | "implements" |
|
---|
1049 | "include" |
|
---|
1050 | "include_once" |
|
---|
1051 | "interface" |
|
---|
1052 | "instanceof" |
|
---|
1053 | "isset" |
|
---|
1054 | "list" |
|
---|
1055 | "namespace" |
|
---|
1056 | "new" |
|
---|
1057 | "old_function" |
|
---|
1058 | "or" |
|
---|
1059 | "print" |
|
---|
1060 | "private" |
|
---|
1061 | "protected" |
|
---|
1062 | "public" |
|
---|
1063 | "require" |
|
---|
1064 | "require_once" |
|
---|
1065 | "return" |
|
---|
1066 | "static" |
|
---|
1067 | "switch" |
|
---|
1068 | "throw" |
|
---|
1069 | "try" |
|
---|
1070 | "unset" |
|
---|
1071 | "use" |
|
---|
1072 | "var" |
|
---|
1073 | "while" |
|
---|
1074 | "xor" |
|
---|
1075 |
|
---|
1076 | "parent" |
|
---|
1077 | "self" |
|
---|
1078 | "stdClass" { addToken(Token.RESERVED_WORD); }
|
---|
1079 |
|
---|
1080 | /* Functions */
|
---|
1081 | "__call" |
|
---|
1082 | "__construct" |
|
---|
1083 | "__getfunctions" |
|
---|
1084 | "__getlastrequest" |
|
---|
1085 | "__getlastresponse" |
|
---|
1086 | "__gettypes" |
|
---|
1087 | "__tostring" |
|
---|
1088 | "abs" |
|
---|
1089 | "acos" |
|
---|
1090 | "acosh" |
|
---|
1091 | "add" |
|
---|
1092 | ("add"("_namespace"|"_root"|"action"|"color"|"cslashes"|"entry"|"fill"|"function"|"shape"|"slashes"|"string")) |
|
---|
1093 | "aggregate" |
|
---|
1094 | "aggregate_info" |
|
---|
1095 | "aggregate_methods" |
|
---|
1096 | "aggregate_methods_by_list" |
|
---|
1097 | "aggregate_methods_by_regexp" |
|
---|
1098 | "aggregate_properties" |
|
---|
1099 | "aggregate_properties_by_list" |
|
---|
1100 | "aggregate_properties_by_regexp" |
|
---|
1101 | "aggregation_info" |
|
---|
1102 | "align" |
|
---|
1103 | ("apd_"("breakpoint"|"callstack"|"clunk"|"continue"|"croak"|"dump_function_table"|"dump_persistent_resources"|"dump_regular_resources"|"echo"|"get_active_symbols"|"set_pprof_trace"|"set_session"|"set_session_trace"|"set_socket_session_trace")) |
|
---|
1104 | "append" |
|
---|
1105 | "append_child" |
|
---|
1106 | "append_sibling" |
|
---|
1107 | "appendchild" |
|
---|
1108 | "appenddata" |
|
---|
1109 | ("array_"("change_key_case"|"chunk"|"combine"|"count_values"|"diff"|"diff_assoc"|"diff_key"|"diff_uassoc"|"diff_ukey"|"fill"|"filter"|"flip"|"intersect"|"intersect_assoc"|"intersect_key"|"intersect_uassoc"|"intersect_ukey"|"key_exists"|"keys"|"map"|"merge"|"merge_recursive"|"multisort"|"pad"|"pop"|"push"|"rand"|"reduce"|"reverse"|"search"|"shift"|"slice"|"splice"|"sum"|"udiff"|"udiff_assoc"|"udiff_uassoc"|"uintersect"|"uintersect_assoc"|"uintersect_uassoc"|"unique"|"unshift"|"values"|"walk"|"walk_recursive")) |
|
---|
1110 | "arsort" |
|
---|
1111 | "ascii2ebcdic" |
|
---|
1112 | "asin" |
|
---|
1113 | "asinh" |
|
---|
1114 | "asort" |
|
---|
1115 | "assert" |
|
---|
1116 | "assert_options" |
|
---|
1117 | "assign" |
|
---|
1118 | "assignelem" |
|
---|
1119 | "asxml" |
|
---|
1120 | "atan" |
|
---|
1121 | "atan2" |
|
---|
1122 | "atanh" |
|
---|
1123 | "attreditable" |
|
---|
1124 | "attributes" |
|
---|
1125 | "base64_decode" |
|
---|
1126 | "base64_encode" |
|
---|
1127 | "base_convert" |
|
---|
1128 | "basename" |
|
---|
1129 | "bcadd" |
|
---|
1130 | "bccomp" |
|
---|
1131 | "bcdiv" |
|
---|
1132 | "bcmod" |
|
---|
1133 | "bcmul" |
|
---|
1134 | "bcpow" |
|
---|
1135 | "bcpowmod" |
|
---|
1136 | "bcscale" |
|
---|
1137 | "bcsqrt" |
|
---|
1138 | "bcsub" |
|
---|
1139 | "begintransaction" |
|
---|
1140 | "bin2hex" |
|
---|
1141 | "bind_textdomain_codeset" |
|
---|
1142 | "bindcolumn" |
|
---|
1143 | "bindec" |
|
---|
1144 | "bindparam" |
|
---|
1145 | "bindtextdomain" |
|
---|
1146 | "bzclose" |
|
---|
1147 | "bzcompress" |
|
---|
1148 | "bzdecompress" |
|
---|
1149 | "bzerrno" |
|
---|
1150 | "bzerror" |
|
---|
1151 | "bzerrstr" |
|
---|
1152 | "bzflush" |
|
---|
1153 | "bzopen" |
|
---|
1154 | "bzread" |
|
---|
1155 | "bzwrite" |
|
---|
1156 | "cal_days_in_month" |
|
---|
1157 | "cal_from_jd" |
|
---|
1158 | "cal_info" |
|
---|
1159 | "cal_to_jd" |
|
---|
1160 | "call_user_func" |
|
---|
1161 | "call_user_func_array" |
|
---|
1162 | "call_user_method" |
|
---|
1163 | "call_user_method_array" |
|
---|
1164 | ("ccvs_"("add"|"auth"|"command"|"count"|"delete"|"done"|"init"|"lookup"|"new"|"report"|"return"|"reverse"|"sale"|"status"|"textvalue"|"void")) |
|
---|
1165 | "ceil" |
|
---|
1166 | "chdir" |
|
---|
1167 | "checkdate" |
|
---|
1168 | "checkdnsrr" |
|
---|
1169 | "checkin" |
|
---|
1170 | "checkout" |
|
---|
1171 | "chgrp" |
|
---|
1172 | "child_nodes" |
|
---|
1173 | "children" |
|
---|
1174 | "chmod" |
|
---|
1175 | "chop" |
|
---|
1176 | "chown" |
|
---|
1177 | "chr" |
|
---|
1178 | "chroot" |
|
---|
1179 | "chunk_split" |
|
---|
1180 | "class_exists" |
|
---|
1181 | "class_implements" |
|
---|
1182 | "class_parents" |
|
---|
1183 | "classkit_import" |
|
---|
1184 | "classkit_method_add" |
|
---|
1185 | "classkit_method_copy" |
|
---|
1186 | "classkit_method_redefine" |
|
---|
1187 | "classkit_method_remove" |
|
---|
1188 | "classkit_method_rename" |
|
---|
1189 | "clearstatcache" |
|
---|
1190 | "clone_node" |
|
---|
1191 | "clonenode" |
|
---|
1192 | "close" |
|
---|
1193 | "closedir" |
|
---|
1194 | "closelog" |
|
---|
1195 | "com" |
|
---|
1196 | "commit" |
|
---|
1197 | "compact" |
|
---|
1198 | "connect" |
|
---|
1199 | "connection_aborted" |
|
---|
1200 | "connection_status" |
|
---|
1201 | "connection_timeout" |
|
---|
1202 | "constant" |
|
---|
1203 | "content" |
|
---|
1204 | "convert_cyr_string" |
|
---|
1205 | "convert_uudecode" |
|
---|
1206 | "convert_uuencode" |
|
---|
1207 | "copy" |
|
---|
1208 | "cos" |
|
---|
1209 | "cosh" |
|
---|
1210 | "count" |
|
---|
1211 | "count_chars" |
|
---|
1212 | "crack_check" |
|
---|
1213 | "crack_closedict" |
|
---|
1214 | "crack_getlastmessage" |
|
---|
1215 | "crack_opendict" |
|
---|
1216 | "crc32" |
|
---|
1217 | ("create"("_attribute"|"_cdata_section"|"_comment"|"_element"|"_element_ns"|"_entity_reference"|"_function"|"_processing_instruction"|"_text_node"|"attribute"|"attributens"|"cdatasection"|"comment"|"document"|"documentfragment"|"documenttype"|"element"|"elementns"|"entityreference"|"processinginstruction"|"textnode")) |
|
---|
1218 | "crypt" |
|
---|
1219 | ("curl_"("close"|"copy_handle"|"errno"|"error"|"exec"|"getinfo"|"init"|"multi_add_handle"|"multi_close"|"multi_exec"|"multi_getcontent"|"multi_info_read"|"multi_init"|"multi_remove_handle"|"multi_select"|"setopt"|"version")) |
|
---|
1220 | "current" |
|
---|
1221 | "cybercash_base64_decode" |
|
---|
1222 | "cybercash_base64_encode" |
|
---|
1223 | "cybercash_decr" |
|
---|
1224 | "cybercash_encr" |
|
---|
1225 | "cyrus_authenticate" |
|
---|
1226 | "cyrus_bind" |
|
---|
1227 | "cyrus_close" |
|
---|
1228 | "cyrus_connect" |
|
---|
1229 | "cyrus_query" |
|
---|
1230 | "cyrus_unbind" |
|
---|
1231 | "data" |
|
---|
1232 | "date" |
|
---|
1233 | "date_sunrise" |
|
---|
1234 | "date_sunset" |
|
---|
1235 | "dblist" |
|
---|
1236 | "dbmclose" |
|
---|
1237 | "dbmdelete" |
|
---|
1238 | "dbmexists" |
|
---|
1239 | "dbmfetch" |
|
---|
1240 | "dbmfirstkey" |
|
---|
1241 | "dbminsert" |
|
---|
1242 | "dbmnextkey" |
|
---|
1243 | "dbmopen" |
|
---|
1244 | "dbmreplace" |
|
---|
1245 | "dbstat" |
|
---|
1246 | "dcgettext" |
|
---|
1247 | "dcngettext" |
|
---|
1248 | "dcstat" |
|
---|
1249 | "deaggregate" |
|
---|
1250 | "debug_backtrace" |
|
---|
1251 | "debug_print_backtrace" |
|
---|
1252 | "debug_zval_dump" |
|
---|
1253 | "debugger_off" |
|
---|
1254 | "debugger_on" |
|
---|
1255 | "decbin" |
|
---|
1256 | "dechex" |
|
---|
1257 | "decoct" |
|
---|
1258 | "decrement" |
|
---|
1259 | "define" |
|
---|
1260 | "define_syslog_variables" |
|
---|
1261 | "defined" |
|
---|
1262 | "deg2rad" |
|
---|
1263 | "delete" |
|
---|
1264 | "deletedata" |
|
---|
1265 | "description" |
|
---|
1266 | "dgettext" |
|
---|
1267 | ("dio_"("close"|"fcntl"|"open"|"read"|"seek"|"stat"|"tcsetattr"|"truncate"|"write")) |
|
---|
1268 | "dir" |
|
---|
1269 | "dirname" |
|
---|
1270 | "disk_free_space" |
|
---|
1271 | "disk_total_space" |
|
---|
1272 | "diskfreespace" |
|
---|
1273 | "dl" |
|
---|
1274 | "dngettext" |
|
---|
1275 | "dns_check_record" |
|
---|
1276 | "dns_get_mx" |
|
---|
1277 | "dns_get_record" |
|
---|
1278 | "doctype" |
|
---|
1279 | "document_element" |
|
---|
1280 | "dom_import_simplexml" |
|
---|
1281 | ("domxml_"("new_doc"|"open_file"|"open_mem"|"version"|"xmltree"|"xslt_stylesheet"|"xslt_stylesheet_doc"|"xslt_stylesheet_file")) |
|
---|
1282 | "dotnet" |
|
---|
1283 | "dotnet_load" |
|
---|
1284 | "doubleval" |
|
---|
1285 | "drawcurve" |
|
---|
1286 | "drawcurveto" |
|
---|
1287 | "drawline" |
|
---|
1288 | "drawlineto" |
|
---|
1289 | "dstanchors" |
|
---|
1290 | "dstofsrcanchors" |
|
---|
1291 | "dump_file" |
|
---|
1292 | "dump_mem" |
|
---|
1293 | "dump_node" |
|
---|
1294 | "each" |
|
---|
1295 | "easter_date" |
|
---|
1296 | "easter_days" |
|
---|
1297 | "ebcdic2ascii" |
|
---|
1298 | "end" |
|
---|
1299 | "entities" |
|
---|
1300 | "eof" |
|
---|
1301 | "erase" |
|
---|
1302 | "ereg" |
|
---|
1303 | "ereg_replace" |
|
---|
1304 | "eregi" |
|
---|
1305 | "eregi_replace" |
|
---|
1306 | "error_log" |
|
---|
1307 | "error_reporting" |
|
---|
1308 | "errorcode" |
|
---|
1309 | "errorinfo" |
|
---|
1310 | "escapeshellarg" |
|
---|
1311 | "escapeshellcmd" |
|
---|
1312 | "exec" |
|
---|
1313 | "execute" |
|
---|
1314 | "exif_imagetype" |
|
---|
1315 | "exif_read_data" |
|
---|
1316 | "exif_tagname" |
|
---|
1317 | "exif_thumbnail" |
|
---|
1318 | "exp" |
|
---|
1319 | "explode" |
|
---|
1320 | "expm1" |
|
---|
1321 | "export" |
|
---|
1322 | "extension_loaded" |
|
---|
1323 | "extract" |
|
---|
1324 | "ezmlm_hash" |
|
---|
1325 | "fclose" |
|
---|
1326 | "feof" |
|
---|
1327 | "fetch" |
|
---|
1328 | "fetchall" |
|
---|
1329 | "fetchsingle" |
|
---|
1330 | "fflush" |
|
---|
1331 | "fgetc" |
|
---|
1332 | "fgetcsv" |
|
---|
1333 | "fgets" |
|
---|
1334 | "fgetss" |
|
---|
1335 | "file" |
|
---|
1336 | ("file"("_exists"|"_get_contents"|"_put_contents"|"atime"|"ctime"|"group"|"inode"|"mtime"|"owner"|"perms"|"pro"|"pro_fieldcount"|"pro_fieldname"|"pro_fieldtype"|"pro_fieldwidth"|"pro_retrieve"|"pro_rowcount"|"size"|"type")) |
|
---|
1337 | "find" |
|
---|
1338 | "first_child" |
|
---|
1339 | "floatval" |
|
---|
1340 | "flock" |
|
---|
1341 | "floor" |
|
---|
1342 | "flush" |
|
---|
1343 | "fmod" |
|
---|
1344 | "fnmatch" |
|
---|
1345 | "fopen" |
|
---|
1346 | "fpassthru" |
|
---|
1347 | "fprintf" |
|
---|
1348 | "fputcsv" |
|
---|
1349 | "fputs" |
|
---|
1350 | "fread" |
|
---|
1351 | "free" |
|
---|
1352 | "frenchtojd" |
|
---|
1353 | "fribidi_log2vis" |
|
---|
1354 | "fscanf" |
|
---|
1355 | "fseek" |
|
---|
1356 | "fsockopen" |
|
---|
1357 | "fstat" |
|
---|
1358 | "ftell" |
|
---|
1359 | "ftok" |
|
---|
1360 | ("ftp_"("alloc"|"cdup"|"chdir"|"chmod"|"close"|"connect"|"delete"|"exec"|"fget"|"fput"|"get"|"get_option"|"login"|"mdtm"|"mkdir"|"nb_continue"|"nb_fget"|"nb_fput"|"nb_get"|"nb_put"|"nlist"|"pasv"|"put"|"pwd"|"quit"|"raw"|"rawlist"|"rename"|"rmdir"|"set_option"|"site"|"size"|"ssl_connect"|"systype")) |
|
---|
1361 | "ftruncate" |
|
---|
1362 | "ftstat" |
|
---|
1363 | "func_get_arg" |
|
---|
1364 | "func_get_args" |
|
---|
1365 | "func_num_args" |
|
---|
1366 | "function_exists" |
|
---|
1367 | "fwrite" |
|
---|
1368 | "gd_info" |
|
---|
1369 | "get" |
|
---|
1370 | ("get"("_attr"|"_attribute"|"_attribute_node"|"_browser"|"_cfg_var"|"_class"|"_class_methods"|"_class_vars"|"_content"|"_current_user"|"_declared_classes"|"_declared_interfaces"|"_defined_constants"|"_defined_functions"|"_defined_vars"|"_element_by_id"|"_elements_by_tagname"|"_extension_funcs"|"_headers"|"_html_translation_table"|"_include_path"|"_included_files"|"_loaded_extensions"|"_magic_quotes_gpc"|"_magic_quotes_runtime"|"_meta_tags"|"_nodes"|"_object_vars"|"_parent_class"|"_required_files"|"_resource_type"|"allheaders"|"atime"|"attr"|"attribute"|"attributenode"|"attributenodens"|"attributens"|"buffering"|"children"|"crc"|"ctime"|"cwd"|"date"|"depth"|"elem"|"elementbyid"|"elementsbytagname"|"elementsbytagnamens"|"env"|"filename"|"filetime"|"functions"|"group"|"height"|"hostbyaddr"|"hostbyname"|"hostbynamel"|"hostos"|"imagesize"|"inneriterator"|"inode"|"iterator"|"lastmod"|"method"|"mtime"|"mxrr"|"mygid"|"myinode"|"mypid"|"myuid"|"name"|"nameditem"|"nameditemns"|"opt"|"owner"|"packedsize"|"path"|"pathname"|"perms"|"position"|"protobyname"|"protobynumber"|"randmax"|"rusage"|"servbyname"|"servbyport"|"shape1"|"shape2"|"size"|"stats"|"subiterator"|"text"|"timeofday"|"type"|"unpackedsize"|"version"|"width")) |
|
---|
1371 | "glob" |
|
---|
1372 | "gmdate" |
|
---|
1373 | "gmmktime" |
|
---|
1374 | ("gmp_"("abs"|"add"|"and"|"clrbit"|"cmp"|"com"|"div"|"div_q"|"div_qr"|"div_r"|"divexact"|"fact"|"gcd"|"gcdext"|"hamdist"|"init"|"intval"|"invert"|"jacobi"|"legendre"|"mod"|"mul"|"neg"|"or"|"perfect_square"|"popcount"|"pow"|"powm"|"prob_prime"|"random"|"scan0"|"scan1"|"setbit"|"sign"|"sqrt"|"sqrtrem"|"strval"|"sub"|"xor")) |
|
---|
1375 | "gmstrftime" |
|
---|
1376 | "gregoriantojd" |
|
---|
1377 | ("gz"("close"|"compress"|"deflate"|"encode"|"eof"|"file"|"getc"|"gets"|"getss"|"inflate"|"open"|"passthru"|"puts"|"read"|"rewind"|"seek"|"tell"|"uncompress"|"write")) |
|
---|
1378 | "handle" |
|
---|
1379 | ("has"("_attribute"|"_attributes"|"_child_nodes"|"attribute"|"attributens"|"attributes"|"childnodes"|"children"|"feature"|"next"|"siblings")) |
|
---|
1380 | "header" |
|
---|
1381 | "headers_list" |
|
---|
1382 | "headers_sent" |
|
---|
1383 | "hebrev" |
|
---|
1384 | "hebrevc" |
|
---|
1385 | "hexdec" |
|
---|
1386 | "highlight_file" |
|
---|
1387 | "highlight_string" |
|
---|
1388 | "html_dump_mem" |
|
---|
1389 | "html_entity_decode" |
|
---|
1390 | "htmlentities" |
|
---|
1391 | "htmlspecialchars" |
|
---|
1392 | "http_build_query" |
|
---|
1393 | ("hw_"("array2objrec"|"changeobject"|"children"|"childrenobj"|"close"|"connect"|"connection_info"|"cp"|"deleteobject"|"docbyanchor"|"docbyanchorobj"|"document_attributes"|"document_bodytag"|"document_content"|"document_setcontent"|"document_size"|"dummy"|"edittext"|"error"|"errormsg"|"free_document"|"getanchors"|"getanchorsobj"|"getandlock"|"getchildcoll"|"getchildcollobj"|"getchilddoccoll"|"getchilddoccollobj"|"getobject"|"getobjectbyquery"|"getobjectbyquerycoll"|"getobjectbyquerycollobj"|"getobjectbyqueryobj"|"getparents"|"getparentsobj"|"getrellink"|"getremote"|"getremotechildren"|"getsrcbydestobj"|"gettext"|"getusername"|"identify"|"incollections"|"info"|"inscoll"|"insdoc"|"insertanchors"|"insertdocument"|"insertobject"|"mapid"|"modifyobject"|"mv"|"new_document"|"objrec2array"|"output_document"|"pconnect"|"pipedocument"|"root"|"setlinkroot"|"stat"|"unlock"|"who")) |
|
---|
1394 | "hwapi_hgcsp" |
|
---|
1395 | "hwstat" |
|
---|
1396 | "hypot" |
|
---|
1397 | ("ibase_"("add_user"|"affected_rows"|"backup"|"blob_add"|"blob_cancel"|"blob_close"|"blob_create"|"blob_echo"|"blob_get"|"blob_import"|"blob_info"|"blob_open"|"close"|"commit"|"commit_ret"|"connect"|"db_info"|"delete_user"|"drop_db"|"errcode"|"errmsg"|"execute"|"fetch_assoc"|"fetch_object"|"fetch_row"|"field_info"|"free_event_handler"|"free_query"|"free_result"|"gen_id"|"maintain_db"|"modify_user"|"name_result"|"num_fields"|"num_params"|"param_info"|"pconnect"|"prepare"|"query"|"restore"|"rollback"|"rollback_ret"|"server_info"|"service_attach"|"service_detach"|"set_event_handler"|"timefmt"|"trans"|"wait_event")) |
|
---|
1398 | "iconv" |
|
---|
1399 | ("iconv_"("get_encoding"|"mime_decode"|"mime_decode_headers"|"mime_encode"|"set_encoding"|"strlen"|"strpos"|"strrpos"|"substr")) |
|
---|
1400 | "identify" |
|
---|
1401 | "ignore_user_abort" |
|
---|
1402 | ("image"("2wbmp"|"_type_to_extension"|"_type_to_mime_type"|"alphablending"|"antialias"|"arc"|"char"|"charup"|"colorallocate"|"colorallocatealpha"|"colorat"|"colorclosest"|"colorclosestalpha"|"colorclosesthwb"|"colordeallocate"|"colorexact"|"colorexactalpha"|"colormatch"|"colorresolve"|"colorresolvealpha"|"colorset"|"colorsforindex"|"colorstotal"|"colortransparent"|"copy"|"copymerge"|"copymergegray"|"copyresampled"|"copyresized"|"create"|"createfromgd"|"createfromgd2"|"createfromgd2part"|"createfromgif"|"createfromjpeg"|"createfrompng"|"createfromstring"|"createfromwbmp"|"createfromxbm"|"createfromxpm"|"createtruecolor"|"dashedline"|"destroy"|"ellipse"|"fill"|"filledarc"|"filledellipse"|"filledpolygon"|"filledrectangle"|"filltoborder"|"filter"|"fontheight"|"fontwidth"|"ftbbox"|"fttext"|"gammacorrect"|"gd"|"gd2"|"gif"|"interlace"|"istruecolor"|"jpeg"|"layereffect"|"line"|"loadfont"|"palettecopy"|"png"|"polygon"|"psbbox"|"pscopyfont"|"psencodefont"|"psextendfont"|"psfreefont"|"psloadfont"|"psslantfont"|"pstext"|"rectangle"|"rotate"|"savealpha"|"setbrush"|"setpixel"|"setstyle"|"setthickness"|"settile"|"string"|"stringup"|"sx"|"sy"|"truecolortopalette"|"ttfbbox"|"ttftext"|"types"|"wbmp"|"xbm")) |
|
---|
1403 | ("imap_"("8bit"|"alerts"|"append"|"base64"|"binary"|"body"|"bodystruct"|"check"|"clearflag_full"|"close"|"createmailbox"|"delete"|"deletemailbox"|"errors"|"expunge"|"fetch_overview"|"fetchbody"|"fetchheader"|"fetchstructure"|"get_quota"|"get_quotaroot"|"getacl"|"getmailboxes"|"getsubscribed"|"header"|"headerinfo"|"headers"|"last_error"|"list"|"listmailbox"|"listscan"|"listsubscribed"|"lsub"|"mail"|"mail_compose"|"mail_copy"|"mail_move"|"mailboxmsginfo"|"mime_header_decode"|"msgno"|"num_msg"|"num_recent"|"open"|"ping"|"qprint"|"renamemailbox"|"reopen"|"rfc822_parse_adrlist"|"rfc822_parse_headers"|"rfc822_write_address"|"scanmailbox"|"search"|"set_quota"|"setacl"|"setflag_full"|"sort"|"status"|"subscribe"|"thread"|"timeout"|"uid"|"undelete"|"unsubscribe"|"utf7_decode"|"utf7_encode"|"utf8")) |
|
---|
1404 | "implode" |
|
---|
1405 | "import" |
|
---|
1406 | "import_request_variables" |
|
---|
1407 | "importnode" |
|
---|
1408 | "in_array" |
|
---|
1409 | "increment" |
|
---|
1410 | "inet_ntop" |
|
---|
1411 | "inet_pton" |
|
---|
1412 | "info" |
|
---|
1413 | ("ini_"("alter"|"get"|"get_all"|"restore"|"set")) |
|
---|
1414 | "insert" |
|
---|
1415 | "insert_before" |
|
---|
1416 | "insertanchor" |
|
---|
1417 | "insertbefore" |
|
---|
1418 | "insertcollection" |
|
---|
1419 | "insertdata" |
|
---|
1420 | "insertdocument" |
|
---|
1421 | "interface_exists" |
|
---|
1422 | "internal_subset" |
|
---|
1423 | "intval" |
|
---|
1424 | "ip2long" |
|
---|
1425 | "iptcembed" |
|
---|
1426 | "iptcparse" |
|
---|
1427 | ("is_"("a"|"array"|"blank_node"|"bool"|"callable"|"dir"|"double"|"executable"|"file"|"finite"|"float"|"infinite"|"int"|"integer"|"link"|"long"|"nan"|"null"|"numeric"|"object"|"readable"|"real"|"resource"|"scalar"|"soap_fault"|"string"|"subclass_of"|"uploaded_file"|"writable"|"writeable")) |
|
---|
1428 | ("is"("asp"|"comment"|"dir"|"dot"|"executable"|"file"|"html"|"id"|"jste"|"link"|"php"|"readable"|"samenode"|"supported"|"text"|"whitespaceinelementcontent"|"writable"|"xhtml"|"xml")) |
|
---|
1429 | "item" |
|
---|
1430 | "iterator_count" |
|
---|
1431 | "iterator_to_array" |
|
---|
1432 | "java_last_exception_clear" |
|
---|
1433 | "java_last_exception_get" |
|
---|
1434 | "jddayofweek" |
|
---|
1435 | "jdmonthname" |
|
---|
1436 | "jdtofrench" |
|
---|
1437 | "jdtogregorian" |
|
---|
1438 | "jdtojewish" |
|
---|
1439 | "jdtojulian" |
|
---|
1440 | "jdtounix" |
|
---|
1441 | "jewishtojd" |
|
---|
1442 | "join" |
|
---|
1443 | "jpeg2wbmp" |
|
---|
1444 | "juliantojd" |
|
---|
1445 | "key" |
|
---|
1446 | "krsort" |
|
---|
1447 | "ksort" |
|
---|
1448 | "langdepvalue" |
|
---|
1449 | "last_child" |
|
---|
1450 | "lastinsertid" |
|
---|
1451 | "lcg_value" |
|
---|
1452 | ("ldap_"("8859_to_t61"|"add"|"bind"|"close"|"compare"|"connect"|"count_entries"|"delete"|"dn2ufn"|"err2str"|"errno"|"error"|"explode_dn"|"first_attribute"|"first_entry"|"first_reference"|"free_result"|"get_attributes"|"get_dn"|"get_entries"|"get_option"|"get_values"|"get_values_len"|"list"|"mod_add"|"mod_del"|"mod_replace"|"modify"|"next_attribute"|"next_entry"|"next_reference"|"parse_reference"|"parse_result"|"read"|"rename"|"sasl_bind"|"search"|"set_option"|"set_rebind_proc"|"sort"|"start_tls"|"t61_to_8859"|"unbind")) |
|
---|
1453 | "levenshtein" |
|
---|
1454 | "link" |
|
---|
1455 | "linkinfo" |
|
---|
1456 | "load" |
|
---|
1457 | "loadhtml" |
|
---|
1458 | "loadhtmlfile" |
|
---|
1459 | "loadxml" |
|
---|
1460 | "localeconv" |
|
---|
1461 | "localtime" |
|
---|
1462 | "lock" |
|
---|
1463 | "log" |
|
---|
1464 | "log10" |
|
---|
1465 | "log1p" |
|
---|
1466 | "long2ip" |
|
---|
1467 | "lookupnamespaceuri" |
|
---|
1468 | "lookupprefix" |
|
---|
1469 | "lstat" |
|
---|
1470 | "ltrim" |
|
---|
1471 | "lzf_compress" |
|
---|
1472 | "lzf_decompress" |
|
---|
1473 | "lzf_optimized_for" |
|
---|
1474 | "mail" |
|
---|
1475 | "main" |
|
---|
1476 | "max" |
|
---|
1477 | ("mb_"("convert_case"|"convert_encoding"|"convert_kana"|"convert_variables"|"decode_mimeheader"|"decode_numericentity"|"detect_encoding"|"detect_order"|"encode_mimeheader"|"encode_numericentity"|"ereg"|"ereg_match"|"ereg_replace"|"ereg_search"|"ereg_search_getpos"|"ereg_search_getregs"|"ereg_search_init"|"ereg_search_pos"|"ereg_search_regs"|"ereg_search_setpos"|"eregi"|"eregi_replace"|"get_info"|"http_input"|"http_output"|"internal_encoding"|"language"|"list_encodings"|"output_handler"|"parse_str"|"preferred_mime_name"|"regex_encoding"|"regex_set_options"|"send_mail"|"split"|"strcut"|"strimwidth"|"strlen"|"strpos"|"strrpos"|"strtolower"|"strtoupper"|"strwidth"|"substitute_character"|"substr"|"substr_count")) |
|
---|
1478 | ("mcal_"("append_event"|"close"|"create_calendar"|"date_compare"|"date_valid"|"day_of_week"|"day_of_year"|"days_in_month"|"delete_calendar"|"delete_event"|"event_add_attribute"|"event_init"|"event_set_alarm"|"event_set_category"|"event_set_class"|"event_set_description"|"event_set_end"|"event_set_recur_daily"|"event_set_recur_monthly_mday"|"event_set_recur_monthly_wday"|"event_set_recur_none"|"event_set_recur_weekly"|"event_set_recur_yearly"|"event_set_start"|"event_set_title"|"expunge"|"fetch_current_stream_event"|"fetch_event"|"is_leap_year"|"list_alarms"|"list_events"|"next_recurrence"|"open"|"popen"|"rename_calendar"|"reopen"|"snooze"|"store_event"|"time_valid"|"week_of_year")) |
|
---|
1479 | ("mcrypt_"("cbc"|"cfb"|"create_iv"|"decrypt"|"ecb"|"enc_get_algorithms_name"|"enc_get_block_size"|"enc_get_iv_size"|"enc_get_key_size"|"enc_get_modes_name"|"enc_get_supported_key_sizes"|"enc_is_block_algorithm"|"enc_is_block_algorithm_mode"|"enc_is_block_mode"|"enc_self_test"|"encrypt"|"generic"|"generic_deinit"|"generic_end"|"generic_init"|"get_block_size"|"get_cipher_name"|"get_iv_size"|"get_key_size"|"list_algorithms"|"list_modes"|"module_close"|"module_get_algo_block_size"|"module_get_algo_key_size"|"module_get_supported_key_sizes"|"module_is_block_algorithm"|"module_is_block_algorithm_mode"|"module_is_block_mode"|"module_open"|"module_self_test"|"ofb")) |
|
---|
1480 | "md5" |
|
---|
1481 | "md5_file" |
|
---|
1482 | "mdecrypt_generic" |
|
---|
1483 | "memcache_debug" |
|
---|
1484 | "memory_get_usage" |
|
---|
1485 | "metaphone" |
|
---|
1486 | "method_exists" |
|
---|
1487 | "mhash" |
|
---|
1488 | "mhash_count" |
|
---|
1489 | "mhash_get_block_size" |
|
---|
1490 | "mhash_get_hash_name" |
|
---|
1491 | "mhash_keygen_s2k" |
|
---|
1492 | "microtime" |
|
---|
1493 | "mime_content_type" |
|
---|
1494 | "mimetype" |
|
---|
1495 | "min" |
|
---|
1496 | "ming_setcubicthreshold" |
|
---|
1497 | "ming_setscale" |
|
---|
1498 | "ming_useswfversion" |
|
---|
1499 | "mkdir" |
|
---|
1500 | "mktime" |
|
---|
1501 | "money_format" |
|
---|
1502 | "move" |
|
---|
1503 | "move_uploaded_file" |
|
---|
1504 | "movepen" |
|
---|
1505 | "movepento" |
|
---|
1506 | "moveto" |
|
---|
1507 | ("msession_"("connect"|"count"|"create"|"destroy"|"disconnect"|"find"|"get"|"get_array"|"get_data"|"inc"|"list"|"listvar"|"lock"|"plugin"|"randstr"|"set"|"set_array"|"set_data"|"timeout"|"uniq"|"unlock")) |
|
---|
1508 | "msg_get_queue" |
|
---|
1509 | "msg_receive" |
|
---|
1510 | "msg_remove_queue" |
|
---|
1511 | "msg_send" |
|
---|
1512 | "msg_set_queue" |
|
---|
1513 | "msg_stat_queue" |
|
---|
1514 | "msql" |
|
---|
1515 | "mt_getrandmax" |
|
---|
1516 | "mt_rand" |
|
---|
1517 | "mt_srand" |
|
---|
1518 | "name" |
|
---|
1519 | "natcasesort" |
|
---|
1520 | "natsort" |
|
---|
1521 | "next" |
|
---|
1522 | "next_sibling" |
|
---|
1523 | "nextframe" |
|
---|
1524 | "ngettext" |
|
---|
1525 | "nl2br" |
|
---|
1526 | "nl_langinfo" |
|
---|
1527 | ("node_"("name"|"type"|"value")) |
|
---|
1528 | "normalize" |
|
---|
1529 | "notations" |
|
---|
1530 | ("notes_"("body"|"copy_db"|"create_db"|"create_note"|"drop_db"|"find_note"|"header_info"|"list_msgs"|"mark_read"|"mark_unread"|"nav_create"|"search"|"unread"|"version")) |
|
---|
1531 | ("nsapi_"("request_headers"|"response_headers"|"virtual")) |
|
---|
1532 | "number_format" |
|
---|
1533 | ("ob_"("clean"|"end_clean"|"end_flush"|"flush"|"get_clean"|"get_contents"|"get_flush"|"get_length"|"get_level"|"get_status"|"gzhandler"|"iconv_handler"|"implicit_flush"|"list_handlers"|"start"|"tidyhandler")) |
|
---|
1534 | "object" |
|
---|
1535 | "objectbyanchor" |
|
---|
1536 | ("oci"("_bind_by_name"|"_cancel"|"_close"|"_commit"|"_connect"|"_define_by_name"|"_error"|"_execute"|"_fetch"|"_fetch_all"|"_fetch_array"|"_fetch_assoc"|"_fetch_object"|"_fetch_row"|"_field_is_null"|"_field_name"|"_field_precision"|"_field_scale"|"_field_size"|"_field_type"|"_field_type_raw"|"_free_statement"|"_internal_debug"|"_lob_copy"|"_lob_is_equal"|"_new_collection"|"_new_connect"|"_new_cursor"|"_new_descriptor"|"_num_fields"|"_num_rows"|"_parse"|"_password_change"|"_pconnect"|"_result"|"_rollback"|"_server_version"|"_set_prefetch"|"_statement_type"|"bindbyname"|"cancel"|"closelob"|"collappend"|"collassign"|"collassignelem"|"collgetelem"|"collmax"|"collsize"|"colltrim"|"columnisnull"|"columnname"|"columnprecision"|"columnscale"|"columnsize"|"columntype"|"columntyperaw"|"commit"|"definebyname"|"error"|"execute"|"fetch"|"fetchinto"|"fetchstatement"|"freecollection"|"freecursor"|"freedesc"|"freestatement"|"internaldebug"|"loadlob"|"logoff"|"logon"|"newcollection"|"newcursor"|"newdescriptor"|"nlogon"|"numcols"|"parse"|"plogon"|"result"|"rollback"|"rowcount"|"savelob"|"savelobfile"|"serverversion"|"setprefetch"|"statementtype"|"writelobtofile"|"writetemporarylob")) |
|
---|
1537 | "octdec" |
|
---|
1538 | ("odbc_"("autocommit"|"binmode"|"close"|"close_all"|"columnprivileges"|"columns"|"commit"|"connect"|"cursor"|"data_source"|"do"|"error"|"errormsg"|"exec"|"execute"|"fetch_array"|"fetch_into"|"fetch_object"|"fetch_row"|"field_len"|"field_name"|"field_num"|"field_precision"|"field_scale"|"field_type"|"foreignkeys"|"free_result"|"gettypeinfo"|"longreadlen"|"next_result"|"num_fields"|"num_rows"|"pconnect"|"prepare"|"primarykeys"|"procedurecolumns"|"procedures"|"result"|"result_all"|"rollback"|"setoption"|"specialcolumns"|"statistics"|"tableprivileges"|"tables")) |
|
---|
1539 | "offsetexists" |
|
---|
1540 | "offsetget" |
|
---|
1541 | "offsetset" |
|
---|
1542 | "offsetunset" |
|
---|
1543 | "opendir" |
|
---|
1544 | "openlog" |
|
---|
1545 | ("openssl_"("csr_export"|"csr_export_to_file"|"csr_new"|"csr_sign"|"error_string"|"free_key"|"get_privatekey"|"get_publickey"|"open"|"pkcs7_decrypt"|"pkcs7_encrypt"|"pkcs7_sign"|"pkcs7_verify"|"pkey_export"|"pkey_export_to_file"|"pkey_get_private"|"pkey_get_public"|"pkey_new"|"private_decrypt"|"private_encrypt"|"public_decrypt"|"public_encrypt"|"seal"|"sign"|"verify"|"x509_check_private_key"|"x509_checkpurpose"|"x509_export"|"x509_export_to_file"|"x509_free"|"x509_parse"|"x509_read")) |
|
---|
1546 | ("ora_"("bind"|"close"|"columnname"|"columnsize"|"columntype"|"commit"|"commitoff"|"commiton"|"do"|"error"|"errorcode"|"exec"|"fetch"|"fetch_into"|"getcolumn"|"logoff"|"logon"|"numcols"|"numrows"|"open"|"parse"|"plogon"|"rollback")) |
|
---|
1547 | "ord" |
|
---|
1548 | "output" |
|
---|
1549 | "output_add_rewrite_var" |
|
---|
1550 | "output_reset_rewrite_vars" |
|
---|
1551 | "overload" |
|
---|
1552 | "override_function" |
|
---|
1553 | "owner_document" |
|
---|
1554 | "pack" |
|
---|
1555 | "parent_node" |
|
---|
1556 | "parents" |
|
---|
1557 | "parse_ini_file" |
|
---|
1558 | "parse_str" |
|
---|
1559 | "parse_url" |
|
---|
1560 | "parsekit_compile_file" |
|
---|
1561 | "parsekit_compile_string" |
|
---|
1562 | "parsekit_func_arginfo" |
|
---|
1563 | "passthru" |
|
---|
1564 | "pathinfo" |
|
---|
1565 | "pclose" |
|
---|
1566 | ("pcntl_"("alarm"|"exec"|"fork"|"getpriority"|"setpriority"|"signal"|"wait"|"waitpid"|"wexitstatus"|"wifexited"|"wifsignaled"|"wifstopped"|"wstopsig"|"wtermsig")) |
|
---|
1567 | "pconnect" |
|
---|
1568 | ("pdf_"("add_annotation"|"add_bookmark"|"add_launchlink"|"add_locallink"|"add_note"|"add_outline"|"add_pdflink"|"add_thumbnail"|"add_weblink"|"arc"|"arcn"|"attach_file"|"begin_page"|"begin_pattern"|"begin_template"|"circle"|"clip"|"close"|"close_image"|"close_pdi"|"close_pdi_page"|"closepath"|"closepath_fill_stroke"|"closepath_stroke"|"concat"|"continue_text"|"curveto"|"delete"|"end_page"|"end_pattern"|"end_template"|"endpath"|"fill"|"fill_stroke"|"findfont"|"fit_pdi_page"|"get_buffer"|"get_font"|"get_fontname"|"get_fontsize"|"get_image_height"|"get_image_width"|"get_majorversion"|"get_minorversion"|"get_parameter"|"get_pdi_parameter"|"get_pdi_value"|"get_value"|"initgraphics"|"lineto"|"load_font"|"makespotcolor"|"moveto"|"new"|"open"|"open_ccitt"|"open_file"|"open_gif"|"open_image"|"open_image_file"|"open_jpeg"|"open_memory_image"|"open_pdi"|"open_pdi_page"|"open_png"|"open_tiff"|"place_image"|"place_pdi_page"|"rect"|"restore"|"rotate"|"save"|"scale"|"set_border_color"|"set_border_dash"|"set_border_style"|"set_char_spacing"|"set_duration"|"set_font"|"set_horiz_scaling"|"set_info"|"set_info_author"|"set_info_creator"|"set_info_keywords"|"set_info_subject"|"set_info_title"|"set_leading"|"set_parameter"|"set_text_matrix"|"set_text_pos"|"set_text_rendering"|"set_text_rise"|"set_value"|"set_word_spacing"|"setcolor"|"setdash"|"setflat"|"setfont"|"setgray"|"setgray_fill"|"setgray_stroke"|"setlinecap"|"setlinejoin"|"setlinewidth"|"setmatrix"|"setmiterlimit"|"setpolydash"|"setrgbcolor"|"setrgbcolor_fill"|"setrgbcolor_stroke"|"show"|"show_boxed"|"show_xy"|"skew"|"stringwidth"|"stroke"|"translate")) |
|
---|
1569 | "pfpro_cleanup" |
|
---|
1570 | "pfpro_init" |
|
---|
1571 | "pfpro_process" |
|
---|
1572 | "pfpro_process_raw" |
|
---|
1573 | "pfpro_version" |
|
---|
1574 | "pfsockopen" |
|
---|
1575 | ("pg_"("affected_rows"|"cancel_query"|"client_encoding"|"close"|"connect"|"connection_busy"|"connection_reset"|"connection_status"|"convert"|"copy_from"|"copy_to"|"dbname"|"delete"|"end_copy"|"escape_bytea"|"escape_string"|"fetch_all"|"fetch_array"|"fetch_assoc"|"fetch_object"|"fetch_result"|"fetch_row"|"field_is_null"|"field_name"|"field_num"|"field_prtlen"|"field_size"|"field_type"|"free_result"|"get_notify"|"get_pid"|"get_result"|"host"|"insert"|"last_error"|"last_notice"|"last_oid"|"lo_close"|"lo_create"|"lo_export"|"lo_import"|"lo_open"|"lo_read"|"lo_read_all"|"lo_seek"|"lo_tell"|"lo_unlink"|"lo_write"|"meta_data"|"num_fields"|"num_rows"|"options"|"parameter_status"|"pconnect"|"ping"|"port"|"put_line"|"query"|"result_error"|"result_seek"|"result_status"|"select"|"send_query"|"set_client_encoding"|"trace"|"tty"|"unescape_bytea"|"untrace"|"update"|"version")) |
|
---|
1576 | "php_check_syntax" |
|
---|
1577 | "php_ini_scanned_files" |
|
---|
1578 | "php_logo_guid" |
|
---|
1579 | "php_sapi_name" |
|
---|
1580 | "php_strip_whitespace" |
|
---|
1581 | "php_uname" |
|
---|
1582 | "phpcredits" |
|
---|
1583 | "phpinfo" |
|
---|
1584 | "phpversion" |
|
---|
1585 | "pi" |
|
---|
1586 | "png2wbmp" |
|
---|
1587 | "popen" |
|
---|
1588 | "pos" |
|
---|
1589 | ("posix_"("ctermid"|"get_last_error"|"getcwd"|"getegid"|"geteuid"|"getgid"|"getgrgid"|"getgrnam"|"getgroups"|"getlogin"|"getpgid"|"getpgrp"|"getpid"|"getppid"|"getpwnam"|"getpwuid"|"getrlimit"|"getsid"|"getuid"|"isatty"|"kill"|"mkfifo"|"setegid"|"seteuid"|"setgid"|"setpgid"|"setsid"|"setuid"|"strerror"|"times"|"ttyname"|"uname")) |
|
---|
1590 | "pow" |
|
---|
1591 | "prefix" |
|
---|
1592 | "preg_grep" |
|
---|
1593 | "preg_match" |
|
---|
1594 | "preg_match_all" |
|
---|
1595 | "preg_quote" |
|
---|
1596 | "preg_replace" |
|
---|
1597 | "preg_replace_callback" |
|
---|
1598 | "preg_split" |
|
---|
1599 | "prepare" |
|
---|
1600 | "prev" |
|
---|
1601 | "previous_sibling" |
|
---|
1602 | "print_r" |
|
---|
1603 | ("printer_"("abort"|"close"|"create_brush"|"create_dc"|"create_font"|"create_pen"|"delete_brush"|"delete_dc"|"delete_font"|"delete_pen"|"draw_bmp"|"draw_chord"|"draw_elipse"|"draw_line"|"draw_pie"|"draw_rectangle"|"draw_roundrect"|"draw_text"|"end_doc"|"end_page"|"get_option"|"list"|"logical_fontheight"|"open"|"select_brush"|"select_font"|"select_pen"|"set_option"|"start_doc"|"start_page"|"write")) |
|
---|
1604 | "printf" |
|
---|
1605 | "proc_close" |
|
---|
1606 | "proc_get_status" |
|
---|
1607 | "proc_nice" |
|
---|
1608 | "proc_open" |
|
---|
1609 | "proc_terminate" |
|
---|
1610 | "process" |
|
---|
1611 | "public_id" |
|
---|
1612 | "putenv" |
|
---|
1613 | "qdom_error" |
|
---|
1614 | "qdom_tree" |
|
---|
1615 | "query" |
|
---|
1616 | "quoted_printable_decode" |
|
---|
1617 | "quotemeta" |
|
---|
1618 | "rad2deg" |
|
---|
1619 | "rand" |
|
---|
1620 | "range" |
|
---|
1621 | "rar_close" |
|
---|
1622 | "rar_entry_get" |
|
---|
1623 | "rar_list" |
|
---|
1624 | "rar_open" |
|
---|
1625 | "rawurldecode" |
|
---|
1626 | "rawurlencode" |
|
---|
1627 | "read" |
|
---|
1628 | "read_exif_data" |
|
---|
1629 | "readdir" |
|
---|
1630 | "readfile" |
|
---|
1631 | "readgzfile" |
|
---|
1632 | "readline" |
|
---|
1633 | ("readline_"("add_history"|"callback_handler_install"|"callback_handler_remove"|"callback_read_char"|"clear_history"|"completion_function"|"info"|"list_history"|"on_new_line"|"read_history"|"redisplay"|"write_history")) |
|
---|
1634 | "readlink" |
|
---|
1635 | "realpath" |
|
---|
1636 | "reason" |
|
---|
1637 | "recode" |
|
---|
1638 | "recode_file" |
|
---|
1639 | "recode_string" |
|
---|
1640 | "register_shutdown_function" |
|
---|
1641 | "register_tick_function" |
|
---|
1642 | "registernamespace" |
|
---|
1643 | "relaxngvalidate" |
|
---|
1644 | "relaxngvalidatesource" |
|
---|
1645 | "remove" |
|
---|
1646 | "remove_attribute" |
|
---|
1647 | "remove_child" |
|
---|
1648 | "removeattribute" |
|
---|
1649 | "removeattributenode" |
|
---|
1650 | "removeattributens" |
|
---|
1651 | "removechild" |
|
---|
1652 | "rename" |
|
---|
1653 | "rename_function" |
|
---|
1654 | "replace" |
|
---|
1655 | "replace_child" |
|
---|
1656 | "replace_node" |
|
---|
1657 | "replacechild" |
|
---|
1658 | "replacedata" |
|
---|
1659 | "reset" |
|
---|
1660 | "restore_error_handler" |
|
---|
1661 | "restore_exception_handler" |
|
---|
1662 | "restore_include_path" |
|
---|
1663 | "result_dump_file" |
|
---|
1664 | "result_dump_mem" |
|
---|
1665 | "rewind" |
|
---|
1666 | "rewinddir" |
|
---|
1667 | "rmdir" |
|
---|
1668 | "rollback" |
|
---|
1669 | "rotate" |
|
---|
1670 | "rotateto" |
|
---|
1671 | "round" |
|
---|
1672 | "rowcount" |
|
---|
1673 | "rsort" |
|
---|
1674 | "rtrim" |
|
---|
1675 | "save" |
|
---|
1676 | "savehtml" |
|
---|
1677 | "savehtmlfile" |
|
---|
1678 | "savexml" |
|
---|
1679 | "scale" |
|
---|
1680 | "scaleto" |
|
---|
1681 | "scandir" |
|
---|
1682 | "schemavalidate" |
|
---|
1683 | "schemavalidatesource" |
|
---|
1684 | "seek" |
|
---|
1685 | "sem_acquire" |
|
---|
1686 | "sem_get" |
|
---|
1687 | "sem_release" |
|
---|
1688 | "sem_remove" |
|
---|
1689 | "serialize" |
|
---|
1690 | ("sesam_"("affected_rows"|"commit"|"connect"|"diagnostic"|"disconnect"|"errormsg"|"execimm"|"fetch_array"|"fetch_result"|"fetch_row"|"field_array"|"field_name"|"free_result"|"num_fields"|"query"|"rollback"|"seek_row"|"sesam_settransaction")) |
|
---|
1691 | ("session_"("cache_expire"|"cache_limiter"|"commit"|"decode"|"destroy"|"encode"|"get_cookie_params"|"id"|"is_registered"|"module_name"|"name"|"regenerate_id"|"register"|"save_path"|"set_cookie_params"|"set_save_handler"|"start"|"unregister"|"unset"|"write_close")) |
|
---|
1692 | "set" |
|
---|
1693 | ("set"("_attribute"|"_content"|"_error_handler"|"_exception_handler"|"_file_buffer"|"_include_path"|"_magic_quotes_runtime"|"_name"|"_namespace"|"_time_limit"|"action"|"attribute"|"attributenode"|"attributenodens"|"attributens"|"background"|"bounds"|"buffering"|"class"|"color"|"commitedversion"|"cookie"|"depth"|"dimension"|"down"|"font"|"frames"|"height"|"hit"|"indentation"|"leftfill"|"leftmargin"|"line"|"linespacing"|"locale"|"margins"|"name"|"over"|"persistence"|"rate"|"ratio"|"rawcookie"|"rightfill"|"rightmargin"|"spacing"|"type"|"up")) |
|
---|
1694 | "sha1" |
|
---|
1695 | "sha1_file" |
|
---|
1696 | "shell_exec" |
|
---|
1697 | "shm_attach" |
|
---|
1698 | "shm_detach" |
|
---|
1699 | "shm_get_var" |
|
---|
1700 | "shm_put_var" |
|
---|
1701 | "shm_remove" |
|
---|
1702 | "shm_remove_var" |
|
---|
1703 | "shmop_close" |
|
---|
1704 | "shmop_delete" |
|
---|
1705 | "shmop_open" |
|
---|
1706 | "shmop_read" |
|
---|
1707 | "shmop_size" |
|
---|
1708 | "shmop_write" |
|
---|
1709 | "show_source" |
|
---|
1710 | "shuffle" |
|
---|
1711 | "similar_text" |
|
---|
1712 | "simplexml_import_dom" |
|
---|
1713 | "simplexml_load_file" |
|
---|
1714 | "simplexml_load_string" |
|
---|
1715 | "sin" |
|
---|
1716 | "sinh" |
|
---|
1717 | "size" |
|
---|
1718 | "sizeof" |
|
---|
1719 | "skewx" |
|
---|
1720 | "skewxto" |
|
---|
1721 | "skewy" |
|
---|
1722 | "skewyto" |
|
---|
1723 | "sleep" |
|
---|
1724 | ("socket_"("accept"|"bind"|"clear_error"|"close"|"connect"|"create"|"create_listen"|"create_pair"|"get_option"|"get_status"|"getpeername"|"getsockname"|"last_error"|"listen"|"read"|"recv"|"recvfrom"|"select"|"send"|"sendto"|"set_block"|"set_blocking"|"set_nonblock"|"set_option"|"set_timeout"|"shutdown"|"strerror"|"write")) |
|
---|
1725 | "sort" |
|
---|
1726 | "soundex" |
|
---|
1727 | "specified" |
|
---|
1728 | "spl_classes" |
|
---|
1729 | "split" |
|
---|
1730 | "spliti" |
|
---|
1731 | "splittext" |
|
---|
1732 | "sprintf" |
|
---|
1733 | "sql_regcase" |
|
---|
1734 | "sqrt" |
|
---|
1735 | "srand" |
|
---|
1736 | "srcanchors" |
|
---|
1737 | "srcsofdst" |
|
---|
1738 | "sscanf" |
|
---|
1739 | "stat" |
|
---|
1740 | ("str_"("ireplace"|"pad"|"repeat"|"replace"|"rot13"|"shuffle"|"split"|"word_count")) |
|
---|
1741 | "strcasecmp" |
|
---|
1742 | "strchr" |
|
---|
1743 | "strcmp" |
|
---|
1744 | "strcoll" |
|
---|
1745 | "strcspn" |
|
---|
1746 | ("stream_"("context_create"|"context_get_default"|"context_get_options"|"context_set_option"|"context_set_params"|"copy_to_stream"|"filter_append"|"filter_prepend"|"filter_register"|"filter_remove"|"get_contents"|"get_filters"|"get_line"|"get_meta_data"|"get_transports"|"get_wrappers"|"register_wrapper"|"select"|"set_blocking"|"set_timeout"|"set_write_buffer"|"socket_accept"|"socket_client"|"socket_enable_crypto"|"socket_get_name"|"socket_recvfrom"|"socket_sendto"|"socket_server"|"wrapper_register"|"wrapper_restore"|"wrapper_unregister")) |
|
---|
1747 | ("str"("eammp3"|"ftime"|"ip_tags"|"ipcslashes"|"ipos"|"ipslashes"|"istr"|"len"|"natcasecmp"|"natcmp"|"ncasecmp"|"ncmp"|"pbrk"|"pos"|"ptime"|"rchr"|"rev"|"ripos"|"rpos"|"spn"|"str"|"tok"|"tolower"|"totime"|"toupper"|"tr"|"val")) |
|
---|
1748 | "substr" |
|
---|
1749 | "substr_compare" |
|
---|
1750 | "substr_count" |
|
---|
1751 | "substr_replace" |
|
---|
1752 | "substringdata" |
|
---|
1753 | ("swf_"("actiongeturl"|"actiongotoframe"|"actiongotolabel"|"actionnextframe"|"actionplay"|"actionprevframe"|"actionsettarget"|"actionstop"|"actiontogglequality"|"actionwaitforframe"|"addbuttonrecord"|"addcolor"|"closefile"|"definebitmap"|"definefont"|"defineline"|"definepoly"|"definerect"|"definetext"|"endbutton"|"enddoaction"|"endshape"|"endsymbol"|"fontsize"|"fontslant"|"fonttracking"|"getbitmapinfo"|"getfontinfo"|"getframe"|"labelframe"|"lookat"|"modifyobject"|"mulcolor"|"nextid"|"oncondition"|"openfile"|"ortho"|"ortho2"|"perspective"|"placeobject"|"polarview"|"popmatrix"|"posround"|"pushmatrix"|"removeobject"|"rotate"|"scale"|"setfont"|"setframe"|"shapearc"|"shapecurveto"|"shapecurveto3"|"shapefillbitmapclip"|"shapefillbitmaptile"|"shapefilloff"|"shapefillsolid"|"shapelinesolid"|"shapelineto"|"shapemoveto"|"showframe"|"startbutton"|"startdoaction"|"startshape"|"startsymbol"|"textwidth"|"translate"|"viewport")) |
|
---|
1754 | "swfbutton_keypress" |
|
---|
1755 | "symlink" |
|
---|
1756 | "syslog" |
|
---|
1757 | "system" |
|
---|
1758 | "system_id" |
|
---|
1759 | "tagname" |
|
---|
1760 | "tan" |
|
---|
1761 | "tanh" |
|
---|
1762 | "target" |
|
---|
1763 | "tcpwrap_check" |
|
---|
1764 | "tell" |
|
---|
1765 | "tempnam" |
|
---|
1766 | "textdomain" |
|
---|
1767 | ("tidy_"("access_count"|"clean_repair"|"config_count"|"diagnose"|"error_count"|"get_body"|"get_config"|"get_error_buffer"|"get_head"|"get_html"|"get_html_ver"|"get_output"|"get_release"|"get_root"|"get_status"|"getopt"|"is_xhtml"|"is_xml"|"load_config"|"parse_file"|"parse_string"|"repair_file"|"repair_string"|"reset_config"|"save_config"|"set_encoding"|"setopt"|"warning_count")) |
|
---|
1768 | "time" |
|
---|
1769 | "time_nanosleep" |
|
---|
1770 | "title" |
|
---|
1771 | "tmpfile" |
|
---|
1772 | "token_get_all" |
|
---|
1773 | "token_name" |
|
---|
1774 | "touch" |
|
---|
1775 | "trigger_error" |
|
---|
1776 | "trim" |
|
---|
1777 | "truncate" |
|
---|
1778 | "type" |
|
---|
1779 | "uasort" |
|
---|
1780 | "ucfirst" |
|
---|
1781 | "ucwords" |
|
---|
1782 | "uksort" |
|
---|
1783 | "umask" |
|
---|
1784 | "uniqid" |
|
---|
1785 | "unixtojd" |
|
---|
1786 | "unlink" |
|
---|
1787 | "unlink_node" |
|
---|
1788 | "unlock" |
|
---|
1789 | "unpack" |
|
---|
1790 | "unregister_tick_function" |
|
---|
1791 | "unserialize" |
|
---|
1792 | "urldecode" |
|
---|
1793 | "urlencode" |
|
---|
1794 | "user" |
|
---|
1795 | "user_error" |
|
---|
1796 | "userlist" |
|
---|
1797 | "usleep" |
|
---|
1798 | "usort" |
|
---|
1799 | "utf8_"("decode"|"encode") |
|
---|
1800 | "valid" |
|
---|
1801 | "validate" |
|
---|
1802 | "value" |
|
---|
1803 | "values" |
|
---|
1804 | "var_"("dump"|"export") |
|
---|
1805 | ("variant_"("abs"|"add"|"and"|"cast"|"cat"|"cmp"|"date_from_timestamp"|"date_to_timestamp"|"div"|"eqv"|"fix"|"get_type"|"idiv"|"imp"|"int"|"mod"|"mul"|"neg"|"not"|"or"|"pow"|"round"|"set"|"set_type"|"sub"|"xor")) |
|
---|
1806 | "version_compare" |
|
---|
1807 | "vfprintf" |
|
---|
1808 | "virtual" |
|
---|
1809 | ("vpopmail_"("add_alias_domain"|"add_alias_domain_ex"|"add_domain"|"add_domain_ex"|"add_user"|"alias_add"|"alias_del"|"alias_del_domain"|"alias_get"|"alias_get_all"|"auth_user"|"del_domain"|"del_domain_ex"|"del_user"|"error"|"passwd"|"set_user_quota")) |
|
---|
1810 | "vprintf" |
|
---|
1811 | "vsprintf" |
|
---|
1812 | ("w32api_"("deftype"|"init_dtype"|"invoke_function"|"register_function"|"set_call_method")) |
|
---|
1813 | "wddx_add_vars" |
|
---|
1814 | "wddx_deserialize" |
|
---|
1815 | "wddx_packet_end" |
|
---|
1816 | "wddx_packet_start" |
|
---|
1817 | "wddx_serialize_value" |
|
---|
1818 | "wddx_serialize_vars" |
|
---|
1819 | "wordwrap" |
|
---|
1820 | "write" |
|
---|
1821 | "writetemporary" |
|
---|
1822 | "xattr_get" |
|
---|
1823 | "xattr_list" |
|
---|
1824 | "xattr_remove" |
|
---|
1825 | "xattr_set" |
|
---|
1826 | "xattr_supported" |
|
---|
1827 | "xinclude" |
|
---|
1828 | ("xml"("_error_string"|"_get_current_byte_index"|"_get_current_column_number"|"_get_current_line_number"|"_get_error_code"|"_parse"|"_parse_into_struct"|"_parser_create"|"_parser_create_ns"|"_parser_free"|"_parser_get_option"|"_parser_set_option"|"_set_character_data_handler"|"_set_default_handler"|"_set_element_handler"|"_set_end_namespace_decl_handler"|"_set_external_entity_ref_handler"|"_set_notation_decl_handler"|"_set_object"|"_set_processing_instruction_handler"|"_set_start_namespace_decl_handler"|"_set_unparsed_entity_decl_handler"|"rpc_decode"|"rpc_decode_request"|"rpc_encode"|"rpc_encode_request"|"rpc_get_type"|"rpc_is_fault"|"rpc_parse_method_descriptions"|"rpc_server_add_introspection_data"|"rpc_server_call_method"|"rpc_server_create"|"rpc_server_destroy"|"rpc_server_register_introspection_callback"|"rpc_server_register_method"|"rpc_set_type")) |
|
---|
1829 | "xpath" |
|
---|
1830 | "xpath_eval" |
|
---|
1831 | "xpath_eval_expression" |
|
---|
1832 | "xpath_new_context" |
|
---|
1833 | "xptr_eval" |
|
---|
1834 | "xptr_new_context" |
|
---|
1835 | ("xsl_xsltprocessor_"("get_parameter"|"has_exslt_support"|"import_stylesheet"|"register_php_functions"|"remove_parameter"|"set_parameter"|"transform_to_doc"|"transform_to_uri"|"transform_to_xml"|"xslt_backend_info")) |
|
---|
1836 | ("xslt_"("backend_name"|"backend_version"|"create"|"errno"|"error"|"free"|"getopt"|"process"|"set_base"|"set_encoding"|"set_error_handler"|"set_log"|"set_object"|"set_sax_handler"|"set_sax_handlers"|"set_scheme_handler"|"set_scheme_handlers"|"setopt")) |
|
---|
1837 | ("yp_"("all"|"cat"|"err_string"|"errno"|"first"|"get_default_domain"|"master"|"match"|"next"|"yp_order")) |
|
---|
1838 | "zend_logo_guid" |
|
---|
1839 | "zend_version" |
|
---|
1840 | ("zip_"("close"|"entry_close"|"entry_compressedsize"|"entry_compressionmethod"|"entry_filesize"|"entry_name"|"entry_open"|"entry_read"|"open"|"read")) |
|
---|
1841 | "zlib_get_coding_type" |
|
---|
1842 |
|
---|
1843 | /* mysql functions */
|
---|
1844 | ("mysql_"("affected_rows"|"client_encoding"|"close"|"connect"|"create_db"|"data_seek"|"db_"("name"|"query")|"drop_db"|"errno"|"error"|"escape_string"|"fetch_"("array"|"assoc"|"field"|"lengths"|"object"|"row")|"field_"("flags"|"len"|"name"|"seek"|"table"|"type")|"free_result"|"get_"("client_info"|"host_info"|"proto_info"|"server_info")|"info"|"insert_id"|"list_"("dbs"|"fields"|"processes"|"tables")|"num_"("fields"|"rows")|"pconnect"|"ping"|"query"|"real_escape_string"|"result"|"select_db"|"set_charset"|"stat"|"tablename"|"thread_id"|"unbuffered_query")) |
|
---|
1845 |
|
---|
1846 | /* Function aliases */
|
---|
1847 | "apache_request_headers" |
|
---|
1848 | "apache_response_headers" |
|
---|
1849 | "attr_get" |
|
---|
1850 | "attr_set" |
|
---|
1851 | "autocommit" |
|
---|
1852 | "bind_param" |
|
---|
1853 | "bind_result" |
|
---|
1854 | "bzclose" |
|
---|
1855 | "bzflush" |
|
---|
1856 | "bzwrite" |
|
---|
1857 | "change_user" |
|
---|
1858 | "character_set_name" |
|
---|
1859 | "checkdnsrr" |
|
---|
1860 | "chop" |
|
---|
1861 | "client_encoding" |
|
---|
1862 | "close" |
|
---|
1863 | "commit" |
|
---|
1864 | "connect" |
|
---|
1865 | "data_seek" |
|
---|
1866 | "debug" |
|
---|
1867 | "disable_reads_from_master" |
|
---|
1868 | "disable_rpl_parse" |
|
---|
1869 | "diskfreespace" |
|
---|
1870 | "doubleval" |
|
---|
1871 | "dump_debug_info" |
|
---|
1872 | "enable_reads_from_master" |
|
---|
1873 | "enable_rpl_parse" |
|
---|
1874 | "escape_string" |
|
---|
1875 | "execute" |
|
---|
1876 | "fbsql" |
|
---|
1877 | "fbsql_tablename" |
|
---|
1878 | "fetch" |
|
---|
1879 | "fetch_array" |
|
---|
1880 | "fetch_assoc" |
|
---|
1881 | "fetch_field" |
|
---|
1882 | "fetch_field_direct" |
|
---|
1883 | "fetch_fields" |
|
---|
1884 | "fetch_object" |
|
---|
1885 | "fetch_row" |
|
---|
1886 | "field_count" |
|
---|
1887 | "field_seek" |
|
---|
1888 | "fputs" |
|
---|
1889 | "free" |
|
---|
1890 | "free_result" |
|
---|
1891 | "ftp_quit" |
|
---|
1892 | "get_client_info" |
|
---|
1893 | "get_required_files" |
|
---|
1894 | "get_server_info" |
|
---|
1895 | "getallheaders" |
|
---|
1896 | "getmxrr" |
|
---|
1897 | "gmp_div" |
|
---|
1898 | ("gz"("close"|"eof"|"getc"|"gets"|"getss"|"passthru"|"puts"|"read"|"rewind"|"seek"|"tell"|"gzwrite")) |
|
---|
1899 | "imap_create" |
|
---|
1900 | "imap_fetchtext" |
|
---|
1901 | "imap_header" |
|
---|
1902 | "imap_listmailbox" |
|
---|
1903 | "imap_listsubscribed" |
|
---|
1904 | "imap_rename" |
|
---|
1905 | "ini_alter" |
|
---|
1906 | "init" |
|
---|
1907 | "is_double" |
|
---|
1908 | "is_int" |
|
---|
1909 | "is_integer" |
|
---|
1910 | "is_real" |
|
---|
1911 | "is_writeable" |
|
---|
1912 | "join" |
|
---|
1913 | "key_exists" |
|
---|
1914 | "kill" |
|
---|
1915 | "ldap_close" |
|
---|
1916 | "ldap_modify" |
|
---|
1917 | "magic_quotes_runtime" |
|
---|
1918 | "master_query" |
|
---|
1919 | "ming_keypress" |
|
---|
1920 | "ming_setcubicthreshold" |
|
---|
1921 | "ming_setscale" |
|
---|
1922 | "ming_useconstants" |
|
---|
1923 | "ming_useswfversion" |
|
---|
1924 | "more_results" |
|
---|
1925 | "next_result" |
|
---|
1926 | "num_rows" |
|
---|
1927 | ("oci"("_free_cursor"|"bindbyname"|"cancel"|"collappend"|"collassignelem"|"collgetelem"|"collmax"|"collsize"|"colltrim"|"columnisnull"|"columnname"|"columnprecision"|"columnscale"|"columnsize"|"columntype"|"columntyperaw"|"commit"|"definebyname"|"error"|"execute"|"fetch"|"fetchstatement"|"freecollection"|"freecursor"|"freedesc"|"freestatement"|"internaldebug"|"loadlob"|"logoff"|"logon"|"newcollection"|"newcursor"|"newdescriptor"|"nlogon"|"numcols"|"parse"|"passwordchange"|"plogon"|"result"|"rollback"|"rowcount"|"savelob"|"savelobfile"|"serverversion"|"setprefetch"|"statementtype"|"writelobtofile")) |
|
---|
1928 | "odbc_do" |
|
---|
1929 | "odbc_field_precision" |
|
---|
1930 | "openssl_free_key" |
|
---|
1931 | "openssl_get_privatekey" |
|
---|
1932 | "openssl_get_publickey" |
|
---|
1933 | "options" |
|
---|
1934 | ("pg_"("clientencoding"|"cmdtuples"|"errormessage"|"exec"|"fieldisnull"|"fieldname"|"fieldnum"|"fieldprtlen"|"fieldsize"|"fieldtype"|"freeresult"|"getlastoid"|"loclose"|"locreate"|"loexport"|"loimport"|"loopen"|"loread"|"loreadall"|"lounlink"|"lowrite"|"numfields"|"numrows"|"result"|"setclientencoding")) |
|
---|
1935 | "ping" |
|
---|
1936 | "pos" |
|
---|
1937 | "posix_errno" |
|
---|
1938 | "prepare" |
|
---|
1939 | "query" |
|
---|
1940 | "read_exif_data" |
|
---|
1941 | "real_connect" |
|
---|
1942 | "real_escape_string" |
|
---|
1943 | "real_query" |
|
---|
1944 | "recode" |
|
---|
1945 | "reset" |
|
---|
1946 | "result_metadata" |
|
---|
1947 | "rollback" |
|
---|
1948 | "rpl_parse_enabled" |
|
---|
1949 | "rpl_probe" |
|
---|
1950 | "rpl_query_type" |
|
---|
1951 | "select_db" |
|
---|
1952 | "send_long_data" |
|
---|
1953 | "session_commit" |
|
---|
1954 | "set_file_buffer" |
|
---|
1955 | "set_local_infile_default" |
|
---|
1956 | "set_local_infile_handler" |
|
---|
1957 | "set_opt" |
|
---|
1958 | "show_source" |
|
---|
1959 | "sizeof" |
|
---|
1960 | "slave_query" |
|
---|
1961 | "snmpwalkoid" |
|
---|
1962 | "socket_get_status" |
|
---|
1963 | "socket_getopt" |
|
---|
1964 | "socket_set_blocking" |
|
---|
1965 | "socket_set_timeout" |
|
---|
1966 | "socket_setopt" |
|
---|
1967 | "sqlite_fetch_string" |
|
---|
1968 | "sqlite_has_more" |
|
---|
1969 | "ssl_set" |
|
---|
1970 | "stat" |
|
---|
1971 | "stmt" |
|
---|
1972 | "stmt_init" |
|
---|
1973 | "store_result" |
|
---|
1974 | "strchr" |
|
---|
1975 | "stream_register_wrapper" |
|
---|
1976 | "thread_safe" |
|
---|
1977 | "use_result" |
|
---|
1978 | "user_error" |
|
---|
1979 | ("velocis_"("autocommit"|"close"|"commit"|"connect"|"exec"|"fetch"|"fieldname"|"fieldnum"|"freeresult"|"off_autocommit"|"result"|"rollback")) |
|
---|
1980 | "virtual" { addToken(Token.FUNCTION); }
|
---|
1981 |
|
---|
1982 | {BooleanLiteral} { addToken(Token.LITERAL_BOOLEAN); }
|
---|
1983 | {PHP_Variable} { addToken(Token.VARIABLE); }
|
---|
1984 |
|
---|
1985 | {LineTerminator} { addEndToken(INTERNAL_IN_PHP - phpInState); return firstToken; }
|
---|
1986 | {JS_Identifier} { addToken(Token.IDENTIFIER); }
|
---|
1987 | {Whitespace} { addToken(Token.WHITESPACE); }
|
---|
1988 |
|
---|
1989 | /* String/Character literals. */
|
---|
1990 | [\"] { start = zzMarkedPos-1; yybegin(PHP_STRING); }
|
---|
1991 | [\'] { start = zzMarkedPos-1; yybegin(PHP_CHAR); }
|
---|
1992 |
|
---|
1993 | /* Comment literals. */
|
---|
1994 | "/**/" { addToken(Token.COMMENT_MULTILINE); }
|
---|
1995 | {JS_MLCBegin} { start = zzMarkedPos-2; yybegin(PHP_MLC); }
|
---|
1996 | {PHP_LineCommentBegin}.* { addToken(Token.COMMENT_EOL); addEndToken(INTERNAL_IN_PHP - phpInState); return firstToken; }
|
---|
1997 |
|
---|
1998 | /* Separators. */
|
---|
1999 | {JS_Separator} { addToken(Token.SEPARATOR); }
|
---|
2000 | {JS_Separator2} { addToken(Token.IDENTIFIER); }
|
---|
2001 |
|
---|
2002 | /* Operators. */
|
---|
2003 | {JS_Operator} { addToken(Token.OPERATOR); }
|
---|
2004 |
|
---|
2005 | /* Numbers */
|
---|
2006 | {JS_IntegerLiteral} { addToken(Token.LITERAL_NUMBER_DECIMAL_INT); }
|
---|
2007 | {JS_HexLiteral} { addToken(Token.LITERAL_NUMBER_HEXADECIMAL); }
|
---|
2008 | {JS_FloatLiteral} { addToken(Token.LITERAL_NUMBER_FLOAT); }
|
---|
2009 | {JS_ErrorNumberFormat} { addToken(Token.ERROR_NUMBER_FORMAT); }
|
---|
2010 |
|
---|
2011 | {JS_ErrorIdentifier} { addToken(Token.ERROR_IDENTIFIER); }
|
---|
2012 |
|
---|
2013 | /* Ended with a line not in a string or comment. */
|
---|
2014 | <<EOF>> { addEndToken(INTERNAL_IN_PHP - phpInState); return firstToken; }
|
---|
2015 |
|
---|
2016 | /* Catch any other (unhandled) characters and assume they are okay. */
|
---|
2017 | . { addToken(Token.IDENTIFIER); }
|
---|
2018 |
|
---|
2019 | }
|
---|
2020 |
|
---|
2021 |
|
---|
2022 | <PHP_MLC> {
|
---|
2023 | // PHP MLC's. This state is essentially Java's MLC state.
|
---|
2024 | [^hwf\n\*]+ {}
|
---|
2025 | {URL} { int temp=zzStartRead; addToken(start,zzStartRead-1, Token.COMMENT_MULTILINE); addHyperlinkToken(temp,zzMarkedPos-1, Token.COMMENT_MULTILINE); start = zzMarkedPos; }
|
---|
2026 | [hwf] {}
|
---|
2027 | \n { addToken(start,zzStartRead-1, Token.COMMENT_MULTILINE); addEndToken(INTERNAL_IN_PHP_MLC - phpInState); return firstToken; }
|
---|
2028 | {JS_MLCEnd} { yybegin(PHP); addToken(start,zzStartRead+1, Token.COMMENT_MULTILINE); }
|
---|
2029 | \* {}
|
---|
2030 | <<EOF>> { addToken(start,zzStartRead-1, Token.COMMENT_MULTILINE); addEndToken(INTERNAL_IN_PHP_MLC - phpInState); return firstToken; }
|
---|
2031 | }
|
---|
2032 |
|
---|
2033 |
|
---|
2034 | <PHP_STRING> {
|
---|
2035 | [^\n\\\$\"]+ {}
|
---|
2036 | \n { addToken(start,zzStartRead-1, Token.LITERAL_STRING_DOUBLE_QUOTE); addEndToken(INTERNAL_IN_PHP_STRING - phpInState); return firstToken; }
|
---|
2037 | \\.? { /* Skip escaped chars. */ }
|
---|
2038 | {PHP_Variable} { int temp=zzStartRead; addToken(start,zzStartRead-1, Token.LITERAL_STRING_DOUBLE_QUOTE); addToken(temp,zzMarkedPos-1, Token.VARIABLE); start = zzMarkedPos; }
|
---|
2039 | "$" {}
|
---|
2040 | \" { yybegin(PHP); addToken(start,zzStartRead, Token.LITERAL_STRING_DOUBLE_QUOTE); }
|
---|
2041 | <<EOF>> { addToken(start,zzStartRead-1, Token.LITERAL_STRING_DOUBLE_QUOTE); addEndToken(INTERNAL_IN_PHP_STRING - phpInState); return firstToken; }
|
---|
2042 | }
|
---|
2043 |
|
---|
2044 |
|
---|
2045 | <PHP_CHAR> {
|
---|
2046 | [^\n\\\']+ {}
|
---|
2047 | \\.? { /* Skip escaped single quotes only, but this should still work. */ }
|
---|
2048 | \n { addToken(start,zzStartRead-1, Token.LITERAL_CHAR); addEndToken(INTERNAL_IN_PHP_CHAR - phpInState); return firstToken; }
|
---|
2049 | \' { yybegin(PHP); addToken(start,zzStartRead, Token.LITERAL_CHAR); }
|
---|
2050 | <<EOF>> { addToken(start,zzStartRead-1, Token.LITERAL_CHAR); addEndToken(INTERNAL_IN_PHP_CHAR - phpInState); return firstToken; }
|
---|
2051 | }
|
---|
2052 |
|
---|