public override void OnListLiteralExpression(ListLiteralExpression node) { BoundSpillSequenceBuilder builder = null; node.Items = VisitExpressionList(ref builder, node.Items); ReplaceCurrentNode(UpdateExpression(builder, node)); }
public override void Switch(IAstTransformer transformer, out Node resultingNode) { ListLiteralExpression thisNode = (ListLiteralExpression)this; Expression resultingTypedNode = thisNode; transformer.OnListLiteralExpression(thisNode, ref resultingTypedNode); resultingNode = resultingTypedNode; }
override public void OnListLiteralExpression(ListLiteralExpression node) { bool generator = AstUtil.IsListGenerator(node); Visit(node.Items); if (generator) { ReplaceCurrentNode( CodeBuilder.CreateConstructorInvocation( TypeSystemServices.Map(List_IEnumerableConstructor), node.Items[0])); } }
public void TestForStmt1() { Boo.Lang.Compiler.Ast.Module module = ParseTestCase("for_stmt_1.boo"); ForStatement fs = (ForStatement)module.Globals.Statements[0]; Assert.AreEqual(1, fs.Declarations.Count); Declaration d = fs.Declarations[0]; Assert.AreEqual("i", d.Name); Assert.IsNull(d.Type); ListLiteralExpression lle = (ListLiteralExpression)fs.Iterator; Assert.AreEqual(3, lle.Items.Count); for (int i = 0; i < 3; ++i) { Assert.AreEqual(i + 1, ((IntegerLiteralExpression)lle.Items[i]).Value); } Assert.AreEqual(1, fs.Block.Statements.Count); Assert.AreEqual("print", ((ReferenceExpression)((MethodInvocationExpression)((ExpressionStatement)fs.Block.Statements[0]).Expression).Target).Name); }
public override void OnListLiteralExpression(ListLiteralExpression node) { Write("["); WriteCommaSeparatedList(node.Items); Write("]"); }
override public void LeaveListLiteralExpression(ListLiteralExpression node) { ConvertExpressions(node.Items); }
public override void OnListLiteralExpression(ListLiteralExpression node) { throw new NotImplementedException(); }
override public void LeaveListLiteralExpression(ListLiteralExpression node) { OnExpression(node); }
public override void OnListLiteralExpression(ListLiteralExpression node) { MakeLiteralResult("Boo.Lang.List"); }
public override void OnListLiteralExpression(ListLiteralExpression node) { base.OnListLiteralExpression(node); Check(node); }