Commit Graph

43 Commits

Author SHA1 Message Date
nikic
21dc9b32f4 Add test coverage for all nodes 2011-11-27 11:20:35 +01:00
nikic
03a0449b1a Add tests for other scalar types 2011-11-26 17:10:18 +01:00
nikic
933bebb9b8 Fix parsing of special int syntaxes
Also add the means to test code parsing.
2011-11-26 16:09:39 +01:00
nikic
3b02facf0c Add an example 2011-11-12 18:29:50 +01:00
nikic
2ec6ae4b03 Make NameResolver add namespacedName subnodes 2011-11-12 13:24:59 +01:00
nikic
c94a4767df Add tests for XML serialization
Also fix the invalid namespace URIs I used.
2011-11-06 18:09:32 +01:00
nikic
5f0a1535ff Fix unit tests 2011-10-26 18:35:37 +02:00
nikic
69b298c4b5 Recognize halt_compiler() ?> (without ;) 2011-10-18 18:03:28 +02:00
nikic
ab72f98570 Add NameResolver
The NameResolver visitor tries to resolve all names to fully qualified names. It will resolve all non-dynamic names, apart from unqualified function and constant names. The latter can not be resolved properly without running the code.
2011-09-28 20:14:27 +02:00
nikic
62183807ee Add test coverage for Node_Name
And fix bugs found while doing so.
2011-09-28 18:11:28 +02:00
nikic
d53173c2f3 Don't use references in NodeTraverser
Stop using reference magic in the NodeTraverser. Instead use normal return values. Additionally enfore that an array is passed to ->traverse().
2011-09-24 23:39:05 +02:00
nikic
df7cb44eed Use seperate Name node classes instead of type subnode 2011-09-24 16:53:40 +02:00
nikic
a551bbc5a4 Add PHPParser_Node interface 2011-09-21 21:43:19 +02:00
nikic
847cdbc5c6 Swap argument order for ArrayItem 2011-09-02 19:49:46 +02:00
nikic
17a81b5c8f Properly parse escape sequences:
* Add support for oct and hex escape sequences
* Take used quote type into account when parsing encapsed strings
2011-08-20 10:40:27 +02:00
nikic
299893066d Fix NodeTraverser by putting to-be-deleted and to-be-merged nodes into the same queue. Additionally do not further iterate queued nodes. 2011-08-19 17:19:27 +02:00
nikic
e0fe21287d Add specialized constructors for all expression nodes apart from lambda 2011-08-11 10:25:51 +02:00
nikic
d9a23f2dc7 Add specialized constructors for Expr_Array*, make Variable an Expr 2011-08-11 08:13:01 +02:00
nikic
1da728321f Rename tests from Unit_ to PHPParser_Tests_ 2011-08-10 11:13:37 +02:00
nikic
f67ff50550 Give all Scalar nodes and the special nodes Name and Variable specialized constructors for easier use 2011-08-09 15:07:05 +02:00
nikic
ae46aeda7f Don't save whether a string is binary anymore. The binary flag isn't going to be used in the next couple of years, so it doesn't make sense to unnecessarily complicate things. 2011-08-09 14:19:44 +02:00
nikic
197b8e6967 Don't save quote type for strings anymore (as it is irrelevant for script execution) 2011-08-09 14:12:15 +02:00
nikic
2c68d1c09e Update testsuite 2011-08-09 12:42:12 +02:00
nikic
962c4dc0f0 Add some more unit tests 2011-07-13 23:07:05 +02:00
nikic
cc80385aae Fix incorrect line number extraction 2011-07-13 13:27:14 +02:00
nikic
a6f97681f6 Start adding Unit test (PHPUnit) 2011-07-13 13:03:37 +02:00
nikic
b24d0e2dc4 Rename PHPParser_ParseErrorException to PHPParser_Error 2011-06-05 18:52:41 +02:00
nikic
83a2077f0e Add Autoloader 2011-06-05 18:47:52 +02:00
nikic
620525a5da Prefix all classes with PHPParser_ 2011-06-05 18:40:04 +02:00
nikic
d82bbb3bea Throw ParseErrorException on error instead of error callback
As long as the parser isn't reentrant having an error callback doesn't really make sense and only complicates everything.
2011-06-03 17:44:23 +02:00
nikic
b80f326b6a Fix problem with indented strings by introducing PrettyPrinter->pSafe 2011-06-02 22:52:24 +02:00
nikic
fabe44ecb1 fix doccomment 2011-06-02 11:39:33 +02:00
nikic
5e91c622cc Measure time spent in parser, pretty printer and comparison 2011-06-01 20:00:52 +02:00
nikic
3213cf85cb Add known issues 2011-05-31 18:33:38 +02:00
nikic
2fb0206deb Add missing rules to parser to allow a::${b} 2011-05-31 17:28:22 +02:00
nikic
4f3260f670 Add doccomments and slightly change some APIs 2011-05-31 16:33:11 +02:00
nikic
e6b356af45 Fix some pretty printing issues 2011-05-30 22:11:11 +02:00
nikic
8a3074db38 Decouple NodeDumper from NodeAbstract 2011-05-30 19:21:25 +02:00
nikic
22ea3d6a70 Make Node_Scalar instanceof Node_Expr 2011-05-30 18:01:38 +02:00
nikic
43b41e382f Further work on PrettyPrinter 2011-05-29 21:06:43 +02:00
nikic
489f8c8b56 Fix some prettyprinting issues 2011-05-29 20:38:36 +02:00
nikic
15e268cd8b Parse escape sequences in encapsed strings too 2011-05-29 20:06:53 +02:00
nikic
3c13dce680 Further work on PrettyPrinter. Add possibility to test PrettyPrinter correctness 2011-05-29 17:33:03 +02:00