letVarBinding_AST= (AST)astFactory.make( (new ASTArray(2)).add(astFactory.create(VARIABLE_BINDING,varName)).add(expr_AST));
letVarBinding_AST= (AST)astFactory.make( (new ASTArray(2)).add(astFactory.create(VARIABLE_BINDING,varName)).add(letVarBinding_AST));
	public final void letVarBinding() throws RecognitionException, TokenStreamException {				returnAST = null;		ASTPair currentAST = new ASTPair();		AST letVarBinding_AST = null;		AST expr_AST = null;		String varName;				match(DOLLAR);		varName=qName();		astFactory.addASTChild(currentAST, returnAST);		match(COLON);		match(EQ);		exprSingle();		expr_AST = (AST)returnAST;		astFactory.addASTChild(currentAST, returnAST);		if ( inputState.guessing==0 ) {			letVarBinding_AST = (AST)currentAST.root;			letVarBinding_AST= (AST)astFactory.make( (new ASTArray(2)).add(astFactory.create(VARIABLE_BINDING,varName)).add(expr_AST));			currentAST.root = letVarBinding_AST;			currentAST.child = letVarBinding_AST!=null &&letVarBinding_AST.getFirstChild()!=null ?				letVarBinding_AST.getFirstChild() : letVarBinding_AST;			currentAST.advanceChildToEnd();		}		letVarBinding_AST = (AST)currentAST.root;		returnAST = letVarBinding_AST;	}