Homec4science

Separate XHPAST into AAST (an abstract AST) and XHPAST (a concrete, XHP AST)

Authored by epriestley <git@epriestley.com> on Dec 14 2011, 04:36.

Description

Separate XHPAST into AAST (an abstract AST) and XHPAST (a concrete, XHP AST)

Summary:
This is a rough-but-mostly-correct cut to unblock @pad on T635. Eventually we
can replace XHPAST with PHPAST and get rid of XHP/HPHP-extension support, but
this splits AAST from XHPAST without changing the XHPAST interface.

Facebook should be able to extend XHPASTTree, or just use it as-is and call
setNodeConstants() / setTokenConstants() before doing anything with it. Ideally,
you should extend AAST instead into HPHPAST or something, but that's sort of a
lot of work.

Test Plan: Ran "arc lint", "arc liberate", relevant libphutil and arcanist unit
tests.

Reviewers: pad, jungejason, btrahan

Reviewed By: pad

CC: aran, pad, epriestley

Maniphest Tasks: T635

Differential Revision: 1205

Details

Committed
epriestley <git@epriestley.com>Dec 14 2011, 19:36
Pushed
aubortMar 17 2017, 12:03
Reviewer
pad
Parents
rPHU29771d50d41d: Increase Markdown flavor of Remarkup
Branches
Unknown
Tags
Unknown

Event Timeline

epriestley <git@epriestley.com> committed rPHUc2bfd841daeb: Separate XHPAST into AAST (an abstract AST) and XHPAST (a concrete, XHP AST) (authored by epriestley <git@epriestley.com>).Dec 14 2011, 19:36