1: <?php declare(strict_types=1);
2:
3: namespace PhpParser;
4:
5: interface Parser {
6: /**
7: * Parses PHP code into a node tree.
8: *
9: * @param string $code The source code to parse
10: * @param ErrorHandler|null $errorHandler Error handler to use for lexer/parser errors, defaults
11: * to ErrorHandler\Throwing.
12: *
13: * @return Node\Stmt[]|null Array of statements (or null non-throwing error handler is used and
14: * the parser was unable to recover from an error).
15: */
16: public function parse(string $code, ?ErrorHandler $errorHandler = null): ?array;
17:
18: /**
19: * Return tokens for the last parse.
20: *
21: * @return Token[]
22: */
23: public function getTokens(): array;
24: }
25: