Introducing PHPParser_Node_Stmt_Block
Nobody has claimed this yet.
- Dominant language
- PHP
- Stars
- 17.5k
- Forks
- 1.1k
- PR merge metrics
- No merged PRs in 30d
Description
I'd like to get rid of the statement arrays and instead introduce a PHPParser_Node_Stmt_Block.
arrays might be a bit faster, but they make the code operating on the AST unnecessary complex by requiring constant type checking and two different APIs, e.g. traverse(Node $node) and traverseArray(array $nodes).
To reduce the BC break, we could implement ArrayAccess, and Countable on that node class.
What do you think?
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing the parser code that handles statement arrays and the two traversal APIs, traverse(Node $node) and traverseArray(array $nodes). Clarify the design and compatibility requirements for a PHPParser_Node_Stmt_Block, including ArrayAccess and Countable, before defining what a complete implementation would require.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- php
- Domain
- compilers
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100