143 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			143 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| Closures
 | |
| -----
 | |
| <?php
 | |
| function($a) { $a; };
 | |
| function($a) use($b) {};
 | |
| function() use($a, &$b) {};
 | |
| function &($a) {};
 | |
| static function() {};
 | |
| function($a) : array {};
 | |
| function() use($a) : \Foo\Bar {};
 | |
| -----
 | |
| array(
 | |
|     0: Expr_Closure(
 | |
|         static: false
 | |
|         byRef: false
 | |
|         params: array(
 | |
|             0: Param(
 | |
|                 type: null
 | |
|                 byRef: false
 | |
|                 variadic: false
 | |
|                 name: a
 | |
|                 default: null
 | |
|             )
 | |
|         )
 | |
|         uses: array(
 | |
|         )
 | |
|         returnType: null
 | |
|         stmts: array(
 | |
|             0: Expr_Variable(
 | |
|                 name: a
 | |
|             )
 | |
|         )
 | |
|     )
 | |
|     1: Expr_Closure(
 | |
|         static: false
 | |
|         byRef: false
 | |
|         params: array(
 | |
|             0: Param(
 | |
|                 type: null
 | |
|                 byRef: false
 | |
|                 variadic: false
 | |
|                 name: a
 | |
|                 default: null
 | |
|             )
 | |
|         )
 | |
|         uses: array(
 | |
|             0: Expr_ClosureUse(
 | |
|                 var: b
 | |
|                 byRef: false
 | |
|             )
 | |
|         )
 | |
|         returnType: null
 | |
|         stmts: array(
 | |
|         )
 | |
|     )
 | |
|     2: Expr_Closure(
 | |
|         static: false
 | |
|         byRef: false
 | |
|         params: array(
 | |
|         )
 | |
|         uses: array(
 | |
|             0: Expr_ClosureUse(
 | |
|                 var: a
 | |
|                 byRef: false
 | |
|             )
 | |
|             1: Expr_ClosureUse(
 | |
|                 var: b
 | |
|                 byRef: true
 | |
|             )
 | |
|         )
 | |
|         returnType: null
 | |
|         stmts: array(
 | |
|         )
 | |
|     )
 | |
|     3: Expr_Closure(
 | |
|         static: false
 | |
|         byRef: true
 | |
|         params: array(
 | |
|             0: Param(
 | |
|                 type: null
 | |
|                 byRef: false
 | |
|                 variadic: false
 | |
|                 name: a
 | |
|                 default: null
 | |
|             )
 | |
|         )
 | |
|         uses: array(
 | |
|         )
 | |
|         returnType: null
 | |
|         stmts: array(
 | |
|         )
 | |
|     )
 | |
|     4: Expr_Closure(
 | |
|         static: true
 | |
|         byRef: false
 | |
|         params: array(
 | |
|         )
 | |
|         uses: array(
 | |
|         )
 | |
|         returnType: null
 | |
|         stmts: array(
 | |
|         )
 | |
|     )
 | |
|     5: Expr_Closure(
 | |
|         static: false
 | |
|         byRef: false
 | |
|         params: array(
 | |
|             0: Param(
 | |
|                 type: null
 | |
|                 byRef: false
 | |
|                 variadic: false
 | |
|                 name: a
 | |
|                 default: null
 | |
|             )
 | |
|         )
 | |
|         uses: array(
 | |
|         )
 | |
|         returnType: array
 | |
|         stmts: array(
 | |
|         )
 | |
|     )
 | |
|     6: Expr_Closure(
 | |
|         static: false
 | |
|         byRef: false
 | |
|         params: array(
 | |
|         )
 | |
|         uses: array(
 | |
|             0: Expr_ClosureUse(
 | |
|                 var: a
 | |
|                 byRef: false
 | |
|             )
 | |
|         )
 | |
|         returnType: Name_FullyQualified(
 | |
|             parts: array(
 | |
|                 0: Foo
 | |
|                 1: Bar
 | |
|             )
 | |
|         )
 | |
|         stmts: array(
 | |
|         )
 | |
|     )
 | |
| )
 | 
