use of org.eclipse.xtext.parser.indentation.indentationAwareTestLanguage.OtherTreeNode in project xtext-core by eclipse.
the class AbstractIndentationAwareTestLanguageSemanticSequencer method sequence.
@Override
public void sequence(ISerializationContext context, EObject semanticObject) {
EPackage epackage = semanticObject.eClass().getEPackage();
ParserRule rule = context.getParserRule();
Action action = context.getAssignedAction();
Set<Parameter> parameters = context.getEnabledBooleanParameters();
if (epackage == IndentationAwareTestLanguagePackage.eINSTANCE)
switch(semanticObject.eClass().getClassifierID()) {
case IndentationAwareTestLanguagePackage.CHILD_LIST:
sequence_ChildList(context, (ChildList) semanticObject);
return;
case IndentationAwareTestLanguagePackage.OTHER_TREE_NODE:
sequence_OtherTreeNode(context, (OtherTreeNode) semanticObject);
return;
case IndentationAwareTestLanguagePackage.TREE:
sequence_Tree(context, (Tree) semanticObject);
return;
case IndentationAwareTestLanguagePackage.TREE_NODE:
sequence_TreeNode(context, (TreeNode) semanticObject);
return;
}
if (errorAcceptor != null)
errorAcceptor.accept(diagnosticProvider.createInvalidContextOrTypeDiagnostic(semanticObject, context));
}
use of org.eclipse.xtext.parser.indentation.indentationAwareTestLanguage.OtherTreeNode in project xtext-core by eclipse.
the class IndentationAwareLanguageTest method testIgnoreEmptyLines_6.
@Test
public void testIgnoreEmptyLines_6() {
final Tree tree = this.parse("\"first\"\n\t\t\"abc\"\n\t");
Assert.assertNotNull(tree);
Assert.assertEquals(1, tree.getMoreNodes().size());
Assert.assertEquals("first", IterableExtensions.<OtherTreeNode>head(tree.getMoreNodes()).getName());
Assert.assertNotNull(IterableExtensions.<OtherTreeNode>head(tree.getMoreNodes()).getChildList());
Assert.assertEquals(1, IterableExtensions.<OtherTreeNode>head(tree.getMoreNodes()).getChildList().getChildren().size());
}
use of org.eclipse.xtext.parser.indentation.indentationAwareTestLanguage.OtherTreeNode in project xtext-core by eclipse.
the class IndentationAwareLanguageTest method testIgnoreEmptyLines_2.
@Test
public void testIgnoreEmptyLines_2() {
StringConcatenation _builder = new StringConcatenation();
_builder.append("\"first\"");
_builder.newLine();
_builder.append("\t");
_builder.newLine();
_builder.append("\"second\"");
_builder.newLine();
final Tree tree = this.parse(_builder);
Assert.assertNotNull(tree);
Assert.assertEquals(2, tree.getMoreNodes().size());
Assert.assertEquals("first", IterableExtensions.<OtherTreeNode>head(tree.getMoreNodes()).getName());
Assert.assertNull(IterableExtensions.<OtherTreeNode>head(tree.getMoreNodes()).getChildList());
Assert.assertEquals("second", IterableExtensions.<OtherTreeNode>last(tree.getMoreNodes()).getName());
}
use of org.eclipse.xtext.parser.indentation.indentationAwareTestLanguage.OtherTreeNode in project xtext-core by eclipse.
the class IndentationAwareLanguageTest method asText.
private StringConcatenation asText(final OtherTreeNode treeNode) {
StringConcatenation _builder = new StringConcatenation();
String _name = treeNode.getName();
_builder.append(_name);
_builder.newLineIfNotEmpty();
{
ChildList _childList = treeNode.getChildList();
boolean _tripleNotEquals = (_childList != null);
if (_tripleNotEquals) {
_builder.append("\t");
_builder.append(">");
_builder.newLine();
{
EList<OtherTreeNode> _children = treeNode.getChildList().getChildren();
for (final OtherTreeNode node : _children) {
_builder.append("\t");
_builder.append("\t");
StringConcatenation _asText = this.asText(node);
_builder.append(_asText, "\t\t");
_builder.newLineIfNotEmpty();
}
}
}
}
return _builder;
}
use of org.eclipse.xtext.parser.indentation.indentationAwareTestLanguage.OtherTreeNode in project xtext-core by eclipse.
the class IndentationAwareLanguageTest method testIgnoreEmptyLines_4.
@Test
public void testIgnoreEmptyLines_4() {
final Tree tree = this.parse("\"first\"\n\t");
Assert.assertNotNull(tree);
Assert.assertEquals(1, tree.getMoreNodes().size());
Assert.assertEquals("first", IterableExtensions.<OtherTreeNode>head(tree.getMoreNodes()).getName());
Assert.assertNull(IterableExtensions.<OtherTreeNode>head(tree.getMoreNodes()).getChildList());
}
Aggregations