public override void OnExpressionStatement(ExpressionStatement node) { base.OnExpressionStatement(node); base.EnsureDocumentInitialized(node); Expression expression = node.get_Expression(); SourceLocation self = base.doc.TokenSourceLocationFollowing(BooExtensions.AsLexicalInfo(expression.get_EndSourceLocation(), null), ";"); if (self != null) { node.set_EndSourceLocation(BooExtensions.OffsetedBy(self, 0, -2)); } }
public override void OnExpressionStatement(ExpressionStatement node) { this._found = false; this.Visit(node.get_Expression()); if (this._found) { Node node2 = node.get_ParentNode(); BooCodeBuilder builder = this._context.get_CodeBuilder(); Block block = new Block(node.get_LexicalInfo()); block.Add(node); block.Add(builder.CreateMethodInvocation(this._parent._UnityRuntimeServices_Update, builder.CreateReference(this._iteratorVariable), builder.CreateReference(this._loopVariable))); node2.Replace(node, block); } }