use of st.gravel.support.compiler.ast.BlockNode in project gravel by gravel-st.
the class ParserTest method testParse2ArgBlockEmpty1.
@Test
public void testParse2ArgBlockEmpty1() {
final BlockNode _node;
_node = ((BlockNode) Parser.factory.source_("[:a :b | ]").parseExpression());
assertTrue(st.gravel.support.jvm.ObjectExtensions.equals_(_node.factory(), BlockNode.factory));
assertEquals((String) "[:a :b | ]", (String) _node.prettySourceString());
}
use of st.gravel.support.compiler.ast.BlockNode in project gravel by gravel-st.
the class ParserTest method testParseVariableDot.
@Test
public void testParseVariableDot() {
final BlockNode _node;
_node = ((BlockNode) Parser.factory.source_(" [foo. bar] ").parseExpression());
assertTrue(st.gravel.support.jvm.ObjectExtensions.equals_(_node.factory(), BlockNode.factory));
assertEquals((String) "\n[\nfoo.\nbar]", (String) _node.prettySourceString());
}
use of st.gravel.support.compiler.ast.BlockNode in project gravel by gravel-st.
the class IntermediateNodeRewriter method produce_whileFalse_.
public WhileFalseNode produce_whileFalse_(final Expression _testExpr, final Expression _loopExpr) {
final BlockNode _testBlockNode;
final BlockNode _loopBlockNode;
if (!_testExpr.isBlockNode()) {
return null;
}
if (!_loopExpr.isBlockNode()) {
return null;
}
_testBlockNode = ((BlockNode) _testExpr);
_loopBlockNode = ((BlockNode) _loopExpr);
return WhileFalseNode.factory.testSequence_doSequence_(((SequenceNode) this.visit_(_testBlockNode.body())), ((SequenceNode) this.visit_(_loopBlockNode.body())));
}
use of st.gravel.support.compiler.ast.BlockNode in project gravel by gravel-st.
the class IntermediateNodeRewriter method produce_to_do_.
public ToDoNode produce_to_do_(final Expression _start, final Expression _stop, final Expression _loopExpr) {
final BlockNode _loopBlockNode;
if (!_loopExpr.isBlockNode()) {
return null;
}
_loopBlockNode = ((BlockNode) _loopExpr);
return ToDoNode.factory.start_stop_step_counterName_doSequence_(((Expression) this.visit_(_start)), ((Expression) this.visit_(_stop)), IntegerLiteralNode.factory.integer_(((java.math.BigInteger) java.math.BigInteger.ONE)), _loopBlockNode.arguments()[0].name(), ((SequenceNode) this.visit_(_loopBlockNode.body())));
}
use of st.gravel.support.compiler.ast.BlockNode in project gravel by gravel-st.
the class IntermediateNodeRewriter method produce_and_.
public BooleanAndNode produce_and_(final Node _receiver, final Expression _testExpr) {
final BlockNode _testBlockNode;
if (!_testExpr.isBlockNode()) {
return null;
}
_testBlockNode = ((BlockNode) _testExpr);
return BooleanAndNode.factory.left_right_(((Expression) this.visit_(_receiver)), ((SequenceNode) this.visit_(_testBlockNode.body())));
}
Aggregations