Nikita Popov
|
458f67cd21
|
Fix encoding declaration handling
As the encoding declaration influences lexing it needs to be
immidiately handled in the parser.
|
2014-08-18 16:27:53 +02:00 |
|
Nikita Popov
|
ef5f3390e7
|
Implement a[0] syntax from merge
|
2014-08-16 22:13:33 +02:00 |
|
Nikita Popov
|
6cf89612db
|
Support doc comments for propreties
|
2014-07-30 19:12:48 +02:00 |
|
Nikita Popov
|
7889050685
|
Add zend_ prefix for emit_op(_tmp)
|
2014-07-28 22:03:16 +02:00 |
|
Nikita Popov
|
cf7f0c412d
|
zend_ast_create determined child count automatically
|
2014-07-28 18:18:47 +02:00 |
|
Nikita Popov
|
39d480e471
|
Remove zend_ast_create_unary etc
|
2014-07-28 17:59:12 +02:00 |
|
Nikita Popov
|
38c4125c2e
|
Cleanup dead/duplicate code
|
2014-07-28 15:23:00 +02:00 |
|
Nikita Popov
|
1d79fb308b
|
Add zend_ast_list* variant to parser stack element
|
2014-07-28 15:10:58 +02:00 |
|
Nikita Popov
|
f29b84ab46
|
Minor cleanups in AST code
|
2014-07-28 14:51:08 +02:00 |
|
Nikita Popov
|
d3cb239305
|
Use separate node type for lists
This saves storing the children count for normal ast nodes.
|
2014-07-28 12:06:57 +02:00 |
|
Nikita Popov
|
21eb6807c9
|
Store lineno for zval ast nodes more efficiently
|
2014-07-27 13:25:32 +02:00 |
|
Nikita Popov
|
bea85f58bb
|
Use more specific parser stack nodes
|
2014-07-27 12:46:54 +02:00 |
|
Nikita Popov
|
a74515e240
|
Separate class type and start lineno
|
2014-07-27 12:37:28 +02:00 |
|
Nikita Popov
|
0b86b1c8e5
|
Store doc comments in separate stack entry from start lineno
|
2014-07-27 12:31:17 +02:00 |
|
Nikita Popov
|
1ea9a2d934
|
Cleanup member modifier code
|
2014-07-27 12:19:01 +02:00 |
|
Nikita Popov
|
df42793cd2
|
Create namespace_name via AST
|
2014-07-26 21:53:50 +02:00 |
|
Nikita Popov
|
4ca4b423be
|
Make lexer return AST nodes
|
2014-07-26 21:22:54 +02:00 |
|
Nikita Popov
|
a51e00a8cd
|
Add functions for create str/long ast directly
|
2014-07-26 19:01:14 +02:00 |
|
Nikita Popov
|
689891c2b2
|
Expose ast via CG(ast)
|
2014-07-24 20:51:01 +02:00 |
|
Nikita Popov
|
1859674061
|
Port ZEND_BIND_GLOBAL optimization
|
2014-07-22 20:24:47 +02:00 |
|
Nikita Popov
|
b9be66ebf2
|
Implement declare()
|
2014-07-22 16:11:19 +02:00 |
|
Nikita Popov
|
2653b8b5dc
|
Handle __halt_compiler()
|
2014-07-22 15:50:23 +02:00 |
|
Nikita Popov
|
3becdb3376
|
__halt_compiler() without haling compiler
|
2014-07-22 14:25:19 +02:00 |
|
Nikita Popov
|
de2f132f33
|
Add NS error checks
Those can probably be implemented in a better way now...
|
2014-07-22 14:08:52 +02:00 |
|
Nikita Popov
|
776800b0a0
|
Discard NS doc comments
|
2014-07-22 13:54:54 +02:00 |
|
Nikita Popov
|
cc0bef6636
|
Fix namespace\, maybe
|
2014-07-22 13:25:47 +02:00 |
|
Nikita Popov
|
9c69c41a64
|
Port top level stmt
Problem: namespace\foo no longer works :/
|
2014-07-22 13:02:51 +02:00 |
|
Nikita Popov
|
8a2ff6b53d
|
Partial NS port (semicolon, no errors)
|
2014-07-22 12:45:44 +02:00 |
|
Nikita Popov
|
b6c9eb21d4
|
Port constant declaration
|
2014-07-22 11:55:07 +02:00 |
|
Nikita Popov
|
64151ec37a
|
Port function/const use
|
2014-07-21 23:41:11 +02:00 |
|
Nikita Popov
|
37ac1b96ed
|
Port use statement
|
2014-07-21 22:49:31 +02:00 |
|
Nikita Popov
|
18fd2a1897
|
Port __TRAIT__ and __CLASS__ to AST
|
2014-07-21 17:34:00 +02:00 |
|
Nikita Popov
|
005315510a
|
Mostly finish class declarations (~50 failing tests)
|
2014-07-21 17:14:01 +02:00 |
|
Nikita Popov
|
b24bda6be1
|
Partial port of class declarations
|
2014-07-21 16:34:45 +02:00 |
|
Nikita Popov
|
461bce5222
|
Prepare zend_ast_decl for reuse with classes
|
2014-07-21 15:38:21 +02:00 |
|
Nikita Popov
|
028c7d20fb
|
Throw \self etc error
Could only enable this now that everything uses the new format
|
2014-07-19 23:44:33 +02:00 |
|
Nikita Popov
|
e6e8867550
|
Fix class name resolution in traits
|
2014-07-19 23:36:01 +02:00 |
|
Nikita Popov
|
86f1004c4e
|
Improve class name handling
|
2014-07-19 23:30:07 +02:00 |
|
Nikita Popov
|
291bcfe4f1
|
Port trait uses
|
2014-07-19 22:39:01 +02:00 |
|
Nikita Popov
|
fd7387a761
|
Handle class const doc comment
Property doc comments not yet handled
|
2014-07-19 15:20:35 +02:00 |
|
Nikita Popov
|
222430d99c
|
Port class const decl
|
2014-07-19 15:13:50 +02:00 |
|
Nikita Popov
|
43d6e599cf
|
Port property declarations
|
2014-07-19 14:54:56 +02:00 |
|
Nikita Popov
|
547331d24d
|
Port methods
The duplicated magic method checks are ugly
|
2014-07-19 12:52:44 +02:00 |
|
Nikita Popov
|
adbddf4e5b
|
Support static closures
|
2014-07-18 15:47:46 +02:00 |
|
Nikita Popov
|
405b97e8a9
|
Handle function doc comments
|
2014-07-18 15:23:16 +02:00 |
|
Nikita Popov
|
cdcf78f730
|
Fix lexer/compiler interdependency
|
2014-07-18 15:05:31 +02:00 |
|
Nikita Popov
|
359f99fe48
|
Use dedicated func_decl ast node
Functions need a bunch of extra info, that becomes inconvenient
to handle using the normal ast structure.
|
2014-07-18 14:57:00 +02:00 |
|
Nikita Popov
|
ae5ba9abfb
|
Port closures
|
2014-07-18 12:58:24 +02:00 |
|
Nikita Popov
|
abfc8bd894
|
Port closure use
|
2014-07-18 12:30:39 +02:00 |
|
Nikita Popov
|
64a7132185
|
Port __METHOD__
|
2014-07-16 23:23:25 +02:00 |
|