private function parseVariable()
    {
        $start = $this->lexer->token;
        $this->expect(Token::DOLLAR);

        return new VariableNode([
            'name' => $this->parseName(),
            'loc'  => $this->loc($start),
        ]);
    }
private function parseVariable()
    {
        $start = $this->lexer->token;
        $this->expect(Token::DOLLAR);

        return new VariableNode([
            'name' => $this->parseName(),
            'loc'  => $this->loc($start),
        ]);
    }
private function parseVariable ( ) { $ start = $ this -> lexer -> token ; $ this -> expect ( Token :: DOLLAR ) ; return new VariableNode ( [ 'name' => $ this -> parseName ( ) , 'loc' => $ this -> loc ( $ start ) , ] ) ; }
@return VariableNode

@throws SyntaxError
@return VariableNode