MCPcopy Create free account
hub / github.com/antlr/codebuff / mTEXT

Method mTEXT

output/java/1.4.19/STLexer.java:505–538  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

503 }
504
505 Token mTEXT() {
506 boolean modifiedText = false;
507 StringBuilder buf = new StringBuilder();
508 while ( c != EOF && c != delimiterStartChar ) {
509 if ( c=='\r' || c=='\n' ) break;
510 if ( c=='}' && subtemplateDepth>0) break;
511 if ( c=='\\' ) {
512 if ( input.LA(2)=='\\' ) { // convert \\ to \
513 consume();
514 consume();
515 buf.append('\\');
516 modifiedText = true;
517 continue;
518 }
519
520 if ( input.LA(2)==delimiterStartChar || input.LA(2)=='}' ) {
521 modifiedText = true;
522 consume(); // toss out \ char
523 buf.append(c);
524 consume();
525 }
526 else {
527 buf.append(c);
528 consume();
529 }
530 continue;
531 }
532 buf.append(c);
533 consume();
534 }
535
536 if ( modifiedText ) return newToken(TEXT, buf.toString());
537 else return newToken(TEXT);
538 }
539
540 /** <pre>
541 * ID : ('a'..'z'|'A'..'Z'|'_'|'/')

Callers 1

outsideMethod · 0.95

Calls 4

consumeMethod · 0.95
newTokenMethod · 0.95
toStringMethod · 0.65
appendMethod · 0.45

Tested by

no test coverage detected