Skip to main content
Drupal API
User account menu
  • Log in

Breadcrumb

  1. Drupal Core 11.1.x
  2. Parser.php

function Parser::parseClassDeclaration

Parses a class declaration

Parameters

bool $default Default mode:

Return value

Node\ClassDeclaration|null

1 call to Parser::parseClassDeclaration()
Parser::parseDeclaration in vendor/mck89/peast/lib/Peast/Syntax/Parser.php
Parses a declaration

File

vendor/mck89/peast/lib/Peast/Syntax/Parser.php, line 1652

Class

Parser
Parser class

Namespace

Peast\Syntax

Code

protected function parseClassDeclaration($default = false) {
    if ($token = $this->scanner
        ->consume("class")) {
        
        //Class declarations are strict mode by default
        $prevStrict = $this->scanner
            ->getStrictMode();
        $this->scanner
            ->setStrictMode(true);
        $id = $this->parseIdentifier(static::$bindingIdentifier);
        if (($default || $id) && ($tail = $this->parseClassTail())) {
            $node = $this->createNode("ClassDeclaration", $token);
            if ($id) {
                $node->setId($id);
            }
            if ($tail[0]) {
                $node->setSuperClass($tail[0]);
            }
            $node->setBody($tail[1]);
            $this->scanner
                ->setStrictMode($prevStrict);
            return $this->completeNode($node);
        }
        $this->error();
    }
    return null;
}

API Navigation

  • Drupal Core 11.1.x
  • Topics
  • Classes
  • Functions
  • Constants
  • Globals
  • Files
  • Namespaces
  • Deprecated
  • Services
RSS feed
Powered by Drupal