public override Node VisitBlock(DeltinScriptParser.BlockContext context) { Node[] statements = new Node[context.statement().Length]; for (int i = 0; i < statements.Length; i++) { statements[i] = VisitStatement(context.statement()[i]); } return(new BlockNode(statements, new Location(file, Range.GetRange(context)))); }
public override Node VisitBlock(DeltinScriptParser.BlockContext context) { IStatementNode[] statements = new IStatementNode[context.statement().Length]; for (int i = 0; i < statements.Length; i++) { statements[i] = (IStatementNode)VisitStatement(context.statement()[i]); } var node = new BlockNode(statements, Range.GetRange(context)); CheckRange(node); return(node); }
public BlockAction(ParseInfo parseInfo, Scope scope, DeltinScriptParser.BlockContext blockContext) { Scope blockScope = scope.Child(); if (blockContext.statement() == null) { Statements = new IStatement[0]; } else { Statements = new IStatement[blockContext.statement().Length]; for (int i = 0; i < Statements.Length; i++) { Statements[i] = DeltinScript.GetStatement(parseInfo, blockScope, blockContext.statement(i)); } } if (blockContext.BLOCK_START() != null && blockContext.BLOCK_END() != null) { parseInfo.Script.AddCompletionRange(new CompletionRange(blockScope, DocRange.GetRange(blockContext.BLOCK_START(), blockContext.BLOCK_END()), CompletionRangeKind.Catch)); } }