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

Method mTEXT

output/java/1.4.13/STLexer.java:487–520  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

485 }
486
487 Token mTEXT() {
488 boolean modifiedText = false;
489 StringBuilder buf = new StringBuilder();
490 while ( c!= EOF && c!= delimiterStartChar ) {
491 if ( c=='\r' || c=='\n' ) break;
492 if ( c=='}' && subtemplateDepth>0) break;
493 if ( c=='\\' ) {
494 if ( input.LA(2)=='\\' ) { // convert \\ to \
495 consume();
496 consume();
497 buf.append('\\');
498 modifiedText = true;
499 continue;
500 }
501
502 if ( input.LA(2)==delimiterStartChar || input.LA(2)=='}' ) {
503 modifiedText = true;
504 consume(); // toss out \ char
505 buf.append(c);
506 consume();
507 }
508 else {
509 buf.append(c);
510 consume();
511 }
512 continue;
513 }
514 buf.append(c);
515 consume();
516 }
517
518 if ( modifiedText ) return newToken(TEXT, buf.toString());
519 else return newToken(TEXT);
520 }
521
522 /** <pre>
523 * 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