International PHP Conference Berlin 2025

La classe Parle\Parser

(PECL parle >= 0.5.1)

Introduction

Classe d'analyse syntaxique. Les règles peuvent être définies à la volée. Une fois finalisée, une instance de Parle\Lexer est requise pour fournir le flux de jetons.

Synopsis de la classe

class Parle\Parser {
/* Constantes */
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;
/* Propriétés */
public int $action = 0;
public int $reduceId = 0;
/* Méthodes */
public advance(): void
public build(): void
public consume(string $data, Parle\Lexer $lexer): void
public dump(): void
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 sigilCount(): int
public sigilName(int $idx): string
public token(string $tok): void
public tokenId(string $tok): int
public trace(): string
public validate(string $data, Parle\Lexer $lexer): bool
}

Propriétés

action

Les actions du parseur actuel qui correspondent à l'une des constantes de classe d'action, en lecture seule.

reduceId

Les règles de grammaire id juste traitées dans l'action de réduction. La valeur correspond soit à un jeton, soit à un identifiant de production. En lecture seule.

Sommaire

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top