protected void addLineEntry(EObject grammarElement, String value, boolean isHidden) throws IOException {
Pair<Integer, RuleCall> hiddenTokenDefCall1 = findTopmostHiddenTokenDef();
Set<ElementLocator> locators = collectLocators(grammarElement);
Pair<Integer, RuleCall> hiddenTokenDefCall2 = findTopmostHiddenTokenDef();
ParserRule hiddenTokenDef = null;
if (hiddenTokenDefCall1 != null && hiddenTokenDefCall2 != null) {
if (hiddenTokenDefCall1.getFirst() < hiddenTokenDefCall2.getFirst())
hiddenTokenDef = (ParserRule) hiddenTokenDefCall1.getSecond().getRule();
else
hiddenTokenDef = (ParserRule) hiddenTokenDefCall2.getSecond().getRule();
}
LineEntry e = createLineEntry(grammarElement, value, true, locators, preservedWS, indentationLevel,
hiddenTokenDef);
preservedWS = null;
if (currentLine == null)
currentLine = createLine();
Line newLine = currentLine.add(e);
if (newLine != null)
currentLine = newLine;
}