QuackCompiler\Parser\Grammar::qualifiedName PHP Method

qualifiedName() public method

public qualifiedName ( )
    public function qualifiedName()
    {
        $symbols = [$this->parser->match(Tag::T_IDENT)];
        while ($this->parser->consumeIf('.')) {
            $symbols[] = $this->parser->match(Tag::T_IDENT);
        }
        return array_map(function ($name) {
            return $this->parser->resolveScope($name);
        }, $symbols);
    }

Usage Example

Esempio n. 1
0
 public function parse(Grammar $grammar, Token $token)
 {
     $shape_name = $grammar->qualifiedName();
     $initializer = null;
     if ($grammar->parser->is('@{')) {
         $initializer = $grammar->evalParselet(ObjectParselet::class);
     }
     return new NewExpr($shape_name, $initializer);
 }