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

Breadcrumb

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

function Parser::parseArrayLiteral

Parses an array literal

Return value

Node\ArrayExpression|null

1 call to Parser::parseArrayLiteral()
Parser::parsePrimaryExpression in vendor/mck89/peast/lib/Peast/Syntax/Parser.php
Parses a primary expression

File

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

Class

Parser
Parser class

Namespace

Peast\Syntax

Code

protected function parseArrayLiteral() {
    if ($token = $this->scanner
        ->consume("[")) {
        $elements = array();
        while (true) {
            if ($elision = $this->parseElision()) {
                $elements = array_merge($elements, array_fill(0, $elision, null));
            }
            if (($element = $this->parseSpreadElement()) || ($element = $this->isolateContext(array(
                "allowIn" => true,
            ), "parseAssignmentExpression"))) {
                $elements[] = $element;
                if (!$this->scanner
                    ->consume(",")) {
                    break;
                }
            }
            else {
                break;
            }
        }
        if ($this->scanner
            ->consume("]")) {
            $node = $this->createNode("ArrayExpression", $token);
            $node->setElements($elements);
            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