fix parsing php5 parameters
This commit is contained in:
		
							parent
							
								
									f0411890e6
								
							
						
					
					
						commit
						bf90803ef3
					
				| @ -343,6 +343,6 @@ func TestPhp5ParameterNode(t *testing.T) { | ||||
| 		}, | ||||
| 	} | ||||
| 
 | ||||
| 	actual, _, _ := php7.Parse(bytes.NewBufferString(src), "test.php") | ||||
| 	actual, _, _ := php5.Parse(bytes.NewBufferString(src), "test.php") | ||||
| 	assertEqual(t, expected, actual) | ||||
| } | ||||
|  | ||||
							
								
								
									
										324
									
								
								php5/php5.go
									
									
									
									
									
								
							
							
						
						
									
										324
									
								
								php5/php5.go
									
									
									
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										26
									
								
								php5/php5.y
									
									
									
									
									
								
							
							
						
						
									
										26
									
								
								php5/php5.y
									
									
									
									
									
								
							| @ -2751,21 +2751,33 @@ static_scalar_value: | ||||
|             { $$ = $1 } | ||||
|     |   namespace_name | ||||
|             { | ||||
|                 $$ = name.NewName($1) | ||||
|                 positions.AddPosition($$, positionBuilder.NewNodeListPosition($1)) | ||||
|                 comments.AddComments($$, ListGetFirstNodeComments($1)) | ||||
|                 name := name.NewName($1) | ||||
|                 positions.AddPosition(name, positionBuilder.NewNodeListPosition($1)) | ||||
|                 comments.AddComments(name, ListGetFirstNodeComments($1)) | ||||
| 
 | ||||
|                 $$ = expr.NewConstFetch(name) | ||||
|                 positions.AddPosition($$, positionBuilder.NewNodePosition(name)) | ||||
|                 comments.AddComments($$, comments[name]) | ||||
|             } | ||||
|     |   T_NAMESPACE T_NS_SEPARATOR namespace_name | ||||
|             { | ||||
|                 $$ = name.NewRelative($3) | ||||
|                 name := name.NewRelative($3) | ||||
|                 positions.AddPosition(name, positionBuilder.NewTokenNodeListPosition($1, $3)) | ||||
|                 comments.AddComments(name, $1.Comments()) | ||||
| 
 | ||||
|                 $$ = expr.NewConstFetch(name) | ||||
|                 positions.AddPosition($$, positionBuilder.NewTokenNodeListPosition($1, $3)) | ||||
|                 comments.AddComments($$, $1.Comments()) | ||||
|                 comments.AddComments($$, comments[name]) | ||||
|             } | ||||
|     |   T_NS_SEPARATOR namespace_name | ||||
|             { | ||||
|                 $$ = name.NewFullyQualified($2) | ||||
|                 name := name.NewFullyQualified($2) | ||||
|                 positions.AddPosition(name, positionBuilder.NewTokenNodeListPosition($1, $2)) | ||||
|                 comments.AddComments(name, $1.Comments()) | ||||
| 
 | ||||
|                 $$ = expr.NewConstFetch(name) | ||||
|                 positions.AddPosition($$, positionBuilder.NewTokenNodeListPosition($1, $2)) | ||||
|                 comments.AddComments($$, $1.Comments()) | ||||
|                 comments.AddComments($$, comments[name]) | ||||
|             } | ||||
|     |   T_ARRAY '(' static_array_pair_list ')' | ||||
|             { | ||||
|  | ||||
| @ -31,7 +31,7 @@ func assertEqual(t *testing.T, expected interface{}, actual interface{}) { | ||||
| 	} | ||||
| } | ||||
| 
 | ||||
| func TestPhp7(t *testing.T) { | ||||
| func TestPhp5(t *testing.T) { | ||||
| 	src := `<? | ||||
| 		foo($a, ...$b); | ||||
| 		$foo($a, ...$b); | ||||
| @ -317,7 +317,7 @@ CAD; | ||||
| 			Variadic:     false, | ||||
| 			VariableType: &name.Name{Parts: []node.Node{&name.NamePart{Value: "bar"}}}, | ||||
| 			Variable:     &expr.Variable{VarName: &node.Identifier{Value: "$bar"}}, | ||||
| 			DefaultValue: &name.Name{Parts: []node.Node{&name.NamePart{Value: "null"}}}, | ||||
| 			DefaultValue: &expr.ConstFetch{Constant: &name.Name{Parts: []node.Node{&name.NamePart{Value: "null"}}}}, | ||||
| 		}, | ||||
| 		&node.Parameter{ | ||||
| 			ByRef:        true, | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user