Initial Drupal 11 with DDEV setup
This commit is contained in:
55
vendor/mck89/peast/README.md
vendored
Normal file
55
vendor/mck89/peast/README.md
vendored
Normal file
@ -0,0 +1,55 @@
|
||||
Peast
|
||||
==========
|
||||
|
||||
[](https://packagist.org/packages/mck89/peast)
|
||||
[](https://packagist.org/packages/mck89/peast)
|
||||
[](https://packagist.org/packages/mck89/peast)
|
||||
[](https://github.com/mck89/peast/actions/workflows/test.yml)
|
||||
|
||||
|
||||
**Peast** _(PHP ECMAScript Abstract Syntax Tree)_ is a PHP 5.4+ library that parses JavaScript code, according to [ECMAScript specification](http://www.ecma-international.org/publications/standards/Ecma-262.htm), and generates an abstract syntax tree following the [ESTree standard](https://github.com/estree/estree).
|
||||
|
||||
Installation
|
||||
-------------
|
||||
Include the following requirement to your composer.json:
|
||||
```json
|
||||
{
|
||||
"require": {
|
||||
"mck89/peast": "dev-master"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
Run `composer install` to install the package.
|
||||
|
||||
Then in your script include the autoloader and you can start using Peast:
|
||||
|
||||
```php
|
||||
require_once "vendor/autoload.php";
|
||||
|
||||
$source = "var a = 1"; // Your JavaScript code
|
||||
$ast = Peast\Peast::latest($source, $options)->parse(); // Parse it!
|
||||
```
|
||||
|
||||
Known issues
|
||||
-------------
|
||||
When Xdebug is enabled and Peast is used to scan code that contains deeply nested functions, this fatal error can appear:
|
||||
```
|
||||
PHP Fatal error: Maximum function nesting level of '512' reached, aborting!
|
||||
```
|
||||
or
|
||||
```
|
||||
PHP Warning: Uncaught Error: Xdebug has detected a possible infinite loop, and aborted your script with a stack depth of '256' frames
|
||||
```
|
||||
To prevent this you can set `xdebug.max_nesting_level` to a higher value, such as 512.
|
||||
|
||||
Documentation
|
||||
-------------
|
||||
Read the documentation for more examples and explanations:
|
||||
|
||||
1. [AST generation and tokenization](doc/ast-and-tokenization.md)
|
||||
2. [Tree Traversing](doc/tree-traversing.md)
|
||||
3. [Querying By Selector](doc/querying-by-selector.md)
|
||||
4. [Rendering](doc/rendering.md)
|
||||
|
||||
[Changelog](doc/changelog.md)
|
||||
Reference in New Issue
Block a user