BLangVariable addBindingPatternMemberVariable(DiagnosticPos pos, Set<Whitespace> ws, String identifier) { BLangSimpleVariable memberVar = (BLangSimpleVariable) TreeBuilder.createSimpleVariableNode(); memberVar.pos = pos; IdentifierNode name = this.createIdentifier(identifier); memberVar.setName(name); memberVar.addWS(ws); this.varStack.push(memberVar); return memberVar; }
void addCatchClause(DiagnosticPos poc, Set<Whitespace> ws, String paramName) { BLangSimpleVariable variableNode = (BLangSimpleVariable) TreeBuilder.createSimpleVariableNode(); variableNode.typeNode = (BLangType) this.typeNodeStack.pop(); variableNode.name = (BLangIdentifier) createIdentifier(paramName); variableNode.pos = variableNode.typeNode.pos; variableNode.addWS(removeNthFromLast(ws, 3)); BLangCatch catchNode = (BLangCatch) TreeBuilder.createCatchNode(); catchNode.pos = poc; catchNode.addWS(ws); catchNode.body = (BLangBlockStmt) this.blockNodeStack.pop(); catchNode.param = variableNode; tryCatchFinallyNodesStack.peek().catchBlocks.add(catchNode); }
private VariableNode generateBasicVarNodeWithoutType(DiagnosticPos pos, Set<Whitespace> ws, String identifier, boolean isExpressionAvailable) { BLangSimpleVariable var = (BLangSimpleVariable) TreeBuilder.createSimpleVariableNode(); var.pos = pos; IdentifierNode name = this.createIdentifier(identifier); var.setName(name); var.addWS(ws); if (isExpressionAvailable) { var.setInitialExpression(this.exprNodeStack.pop()); } return var; }
private VariableNode generateBasicVarNode(DiagnosticPos pos, Set<Whitespace> ws, String identifier, boolean isDeclaredWithVar, boolean isExpressionAvailable) { BLangSimpleVariable var = (BLangSimpleVariable) TreeBuilder.createSimpleVariableNode(); var.pos = pos; IdentifierNode name = this.createIdentifier(identifier); var.setName(name); var.addWS(ws); if (isDeclaredWithVar) { var.isDeclaredWithVar = true; } else { var.setTypeNode(this.typeNodeStack.pop()); } if (isExpressionAvailable) { var.setInitialExpression(this.exprNodeStack.pop()); } return var; }
private BLangSimpleVariableDef createSimpleVariableDef(DiagnosticPos pos, Set<Whitespace> ws, String identifier, boolean isFinal, boolean isExpressionAvailable, boolean isDeclaredWithVar) { BLangSimpleVariable var = (BLangSimpleVariable) TreeBuilder.createSimpleVariableNode(); BLangSimpleVariableDef varDefNode = (BLangSimpleVariableDef) TreeBuilder.createSimpleVariableDefinitionNode(); var.pos = pos; var.addWS(ws); var.setName(this.createIdentifier(identifier)); if (isFinal) { markVariableAsFinal(var); } if (isDeclaredWithVar) { var.isDeclaredWithVar = true; } else { var.setTypeNode(this.typeNodeStack.pop()); } if (isExpressionAvailable) { var.setInitialExpression(this.exprNodeStack.pop()); } varDefNode.pos = pos; varDefNode.setVariable(var); varDefNode.addWS(ws); return varDefNode; }