The Parle\Parser class

From Get docs
Php/docs/latest/class.parle-parser


The Parle\Parser class

Introduction

(PECL parle >= 0.5.1)

Parser class. Rules can be defined on the fly. Once finalized, a Parle\Lexer instance is required to deliver the token stream.

Class synopsis

class Parle\Parser {

/* Constants */

const int ACTION_ERROR = 0;

const int ACTION_SHIFT = 1;

const int ACTION_REDUCE = 2;

const int ACTION_GOTO = 3;

const int ACTION_ACCEPT = 4;

const int ERROR_SYNTAX = 0;

const int ERROR_NON_ASSOCIATIVE = 1;

const int ERROR_UNKNOWN_TOKEN = 2;

/* Properties */

public int $action = 0;

public int $reduceId = 0;

/* Methods */

public advance(): void
public build(): void
public consume(string $data, Parle\Lexer $lexer): void
public dump(): void
public errorInfo(): Parle\ErrorInfo
public left(string $tok): void
public nonassoc(string $tok): void
public precedence(string $tok): void
public push(string $name, string $rule): int
public reset(int $tokenId = ?): void
public right(string $tok): void
public sigil(int $idx): string
public token(string $tok): void
public tokenId(string $tok): int
public trace(): string
public validate(string $data, Parle\Lexer $lexer): bool

}

Predefined Constants

Parle\Parser::ACTION_ERROR Parle\Parser::ACTION_SHIFT Parle\Parser::ACTION_REDUCE Parle\Parser::ACTION_GOTO Parle\Parser::ACTION_ACCEPT Parle\Parser::ERROR_SYNTAX Parle\Parser::ERROR_NON_ASSOCIATIVE Parle\Parser::ERROR_UNKNOWN_TOKEN

Properties

action
Current parser action that matches one of the action class constants, readonly.
reduceId
Grammar rule id just processed in the reduce action. The value corresponds either to a token or to a production id. Readonly.

Table of Contents


© 1997–2020 The PHP Documentation Group
Licensed under the Creative Commons Attribution License v3.0 or later.
https://www.php.net/manual/en/class.parle-parser.php