if (currentIndex >= source.length()) { // reached end of input
if (hasAccumulatedToken(tokenAccumulator))
- return new TokenizerMatch(tokenAccumulator.toString(), null, null);
+ return new TokenizerMatch(tokenAccumulator.toString(), null, null, this);
else
return null;
}
if (matchResult.terminator.termination == PRESERVE) {
if (hasAccumulatedToken(tokenAccumulator))
- return new TokenizerMatch(tokenAccumulator.toString(), null, null);
+ return new TokenizerMatch(tokenAccumulator.toString(), null, null, this);
currentIndex = matchResult.matcher.end();
return matchResult;
currentIndex = matchResult.matcher.end();
if (hasAccumulatedToken(tokenAccumulator))
- return new TokenizerMatch(tokenAccumulator.toString(), null, null);
+ return new TokenizerMatch(tokenAccumulator.toString(), null, null, this);
}
}
}
Matcher match = terminator.match(source, currentIndex);
if (match.find()) {
String token = source.substring(match.start(), match.end());
- return new TokenizerMatch(token, terminator, match);
+ return new TokenizerMatch(token, terminator, match, this);
}
}
return null;