fix bugs: multibyte chars, null pointer in a list

This commit is contained in:
z7zmey
2018-01-10 14:35:08 +02:00
parent ae34fc530e
commit 068716a66d
43 changed files with 2893 additions and 2652 deletions

View File

@@ -26,7 +26,9 @@ func (n *Array) Walk(v node.Visitor) {
if n.Items != nil {
vv := v.GetChildrenVisitor("Items")
for _, nn := range n.Items {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}

View File

@@ -42,14 +42,18 @@ func (n *Closure) Walk(v node.Visitor) {
if n.Params != nil {
vv := v.GetChildrenVisitor("Params")
for _, nn := range n.Params {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}
if n.Uses != nil {
vv := v.GetChildrenVisitor("Uses")
for _, nn := range n.Uses {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}
@@ -61,7 +65,9 @@ func (n *Closure) Walk(v node.Visitor) {
if n.Stmts != nil {
vv := v.GetChildrenVisitor("Stmts")
for _, nn := range n.Stmts {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}

View File

@@ -33,7 +33,9 @@ func (n *FunctionCall) Walk(v node.Visitor) {
if n.Arguments != nil {
vv := v.GetChildrenVisitor("Arguments")
for _, nn := range n.Arguments {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}

View File

@@ -26,7 +26,9 @@ func (n *Isset) Walk(v node.Visitor) {
if n.Variables != nil {
vv := v.GetChildrenVisitor("Variables")
for _, nn := range n.Variables {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}

View File

@@ -26,7 +26,9 @@ func (n *List) Walk(v node.Visitor) {
if n.Items != nil {
vv := v.GetChildrenVisitor("Items")
for _, nn := range n.Items {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}

View File

@@ -40,7 +40,9 @@ func (n *MethodCall) Walk(v node.Visitor) {
if n.Arguments != nil {
vv := v.GetChildrenVisitor("Arguments")
for _, nn := range n.Arguments {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}

View File

@@ -33,7 +33,9 @@ func (n *New) Walk(v node.Visitor) {
if n.Arguments != nil {
vv := v.GetChildrenVisitor("Arguments")
for _, nn := range n.Arguments {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}

View File

@@ -26,7 +26,9 @@ func (n *ShellExec) Walk(v node.Visitor) {
if n.Parts != nil {
vv := v.GetChildrenVisitor("Parts")
for _, nn := range n.Parts {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}

View File

@@ -26,7 +26,9 @@ func (n *ShortArray) Walk(v node.Visitor) {
if n.Items != nil {
vv := v.GetChildrenVisitor("Items")
for _, nn := range n.Items {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}

View File

@@ -26,7 +26,9 @@ func (n *ShortList) Walk(v node.Visitor) {
if n.Items != nil {
vv := v.GetChildrenVisitor("Items")
for _, nn := range n.Items {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}

View File

@@ -40,7 +40,9 @@ func (n *StaticCall) Walk(v node.Visitor) {
if n.Arguments != nil {
vv := v.GetChildrenVisitor("Arguments")
for _, nn := range n.Arguments {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}

View File

@@ -26,7 +26,9 @@ func (n *Name) Walk(v node.Visitor) {
if n.Parts != nil {
vv := v.GetChildrenVisitor("Parts")
for _, nn := range n.Parts {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}

View File

@@ -26,7 +26,9 @@ func (n *Encapsed) Walk(v node.Visitor) {
if n.Parts != nil {
vv := v.GetChildrenVisitor("Parts")
for _, nn := range n.Parts {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}
}

View File

@@ -58,7 +58,9 @@ func (n *AltIf) Walk(v node.Visitor) {
if n.ElseIf != nil {
vv := v.GetChildrenVisitor("ElseIf")
for _, nn := range n.ElseIf {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}

View File

@@ -33,7 +33,9 @@ func (n *Case) Walk(v node.Visitor) {
if n.Stmts != nil {
vv := v.GetChildrenVisitor("Stmts")
for _, nn := range n.Stmts {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}

View File

@@ -30,14 +30,18 @@ func (n *Catch) Walk(v node.Visitor) {
if n.Types != nil {
vv := v.GetChildrenVisitor("Types")
for _, nn := range n.Types {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}
if n.Stmts != nil {
vv := v.GetChildrenVisitor("Stmts")
for _, nn := range n.Stmts {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}

View File

@@ -45,14 +45,18 @@ func (n *Class) Walk(v node.Visitor) {
if n.Modifiers != nil {
vv := v.GetChildrenVisitor("Modifiers")
for _, nn := range n.Modifiers {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}
if n.args != nil {
vv := v.GetChildrenVisitor("args")
for _, nn := range n.args {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}
@@ -64,14 +68,18 @@ func (n *Class) Walk(v node.Visitor) {
if n.Implements != nil {
vv := v.GetChildrenVisitor("Implements")
for _, nn := range n.Implements {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}
if n.Stmts != nil {
vv := v.GetChildrenVisitor("Stmts")
for _, nn := range n.Stmts {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}

View File

@@ -28,14 +28,18 @@ func (n *ClassConstList) Walk(v node.Visitor) {
if n.Modifiers != nil {
vv := v.GetChildrenVisitor("Modifiers")
for _, nn := range n.Modifiers {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}
if n.Consts != nil {
vv := v.GetChildrenVisitor("Consts")
for _, nn := range n.Consts {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}

View File

@@ -46,14 +46,18 @@ func (n *ClassMethod) Walk(v node.Visitor) {
if n.Modifiers != nil {
vv := v.GetChildrenVisitor("Modifiers")
for _, nn := range n.Modifiers {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}
if n.Params != nil {
vv := v.GetChildrenVisitor("Params")
for _, nn := range n.Params {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}
@@ -65,7 +69,9 @@ func (n *ClassMethod) Walk(v node.Visitor) {
if n.Stmts != nil {
vv := v.GetChildrenVisitor("Stmts")
for _, nn := range n.Stmts {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}

View File

@@ -26,7 +26,9 @@ func (n *ConstList) Walk(v node.Visitor) {
if n.Consts != nil {
vv := v.GetChildrenVisitor("Consts")
for _, nn := range n.Consts {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}

View File

@@ -28,7 +28,9 @@ func (n *Declare) Walk(v node.Visitor) {
if n.Consts != nil {
vv := v.GetChildrenVisitor("Consts")
for _, nn := range n.Consts {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}

View File

@@ -26,7 +26,9 @@ func (n *Default) Walk(v node.Visitor) {
if n.Stmts != nil {
vv := v.GetChildrenVisitor("Stmts")
for _, nn := range n.Stmts {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}

View File

@@ -26,7 +26,9 @@ func (n *Echo) Walk(v node.Visitor) {
if n.Exprs != nil {
vv := v.GetChildrenVisitor("Exprs")
for _, nn := range n.Exprs {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}

View File

@@ -26,7 +26,9 @@ func (n *Finally) Walk(v node.Visitor) {
if n.Stmts != nil {
vv := v.GetChildrenVisitor("Stmts")
for _, nn := range n.Stmts {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}

View File

@@ -32,21 +32,27 @@ func (n *For) Walk(v node.Visitor) {
if n.Init != nil {
vv := v.GetChildrenVisitor("Init")
for _, nn := range n.Init {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}
if n.Cond != nil {
vv := v.GetChildrenVisitor("Cond")
for _, nn := range n.Cond {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}
if n.Loop != nil {
vv := v.GetChildrenVisitor("Loop")
for _, nn := range n.Loop {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}

View File

@@ -45,7 +45,9 @@ func (n *Function) Walk(v node.Visitor) {
if n.Params != nil {
vv := v.GetChildrenVisitor("Params")
for _, nn := range n.Params {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}
@@ -57,7 +59,9 @@ func (n *Function) Walk(v node.Visitor) {
if n.Stmts != nil {
vv := v.GetChildrenVisitor("Stmts")
for _, nn := range n.Stmts {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}

View File

@@ -26,7 +26,9 @@ func (n *Global) Walk(v node.Visitor) {
if n.Vars != nil {
vv := v.GetChildrenVisitor("Vars")
for _, nn := range n.Vars {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}

View File

@@ -45,7 +45,9 @@ func (n *GroupUse) Walk(v node.Visitor) {
if n.UseList != nil {
vv := v.GetChildrenVisitor("UseList")
for _, nn := range n.UseList {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}

View File

@@ -58,7 +58,9 @@ func (n *If) Walk(v node.Visitor) {
if n.ElseIf != nil {
vv := v.GetChildrenVisitor("ElseIf")
for _, nn := range n.ElseIf {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}

View File

@@ -39,14 +39,18 @@ func (n *Interface) Walk(v node.Visitor) {
if n.Extends != nil {
vv := v.GetChildrenVisitor("Extends")
for _, nn := range n.Extends {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}
if n.Stmts != nil {
vv := v.GetChildrenVisitor("Stmts")
for _, nn := range n.Stmts {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}

View File

@@ -33,7 +33,9 @@ func (n *Namespace) Walk(v node.Visitor) {
if n.Stmts != nil {
vv := v.GetChildrenVisitor("Stmts")
for _, nn := range n.Stmts {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}

View File

@@ -28,14 +28,18 @@ func (n *PropertyList) Walk(v node.Visitor) {
if n.Modifiers != nil {
vv := v.GetChildrenVisitor("Modifiers")
for _, nn := range n.Modifiers {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}
if n.Properties != nil {
vv := v.GetChildrenVisitor("Properties")
for _, nn := range n.Properties {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}

View File

@@ -26,7 +26,9 @@ func (n *Static) Walk(v node.Visitor) {
if n.Vars != nil {
vv := v.GetChildrenVisitor("Vars")
for _, nn := range n.Vars {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}

View File

@@ -26,7 +26,9 @@ func (n *StmtList) Walk(v node.Visitor) {
if n.Stmts != nil {
vv := v.GetChildrenVisitor("Stmts")
for _, nn := range n.Stmts {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}

View File

@@ -36,7 +36,9 @@ func (n *Switch) Walk(v node.Visitor) {
if n.cases != nil {
vv := v.GetChildrenVisitor("cases")
for _, nn := range n.cases {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}

View File

@@ -37,7 +37,9 @@ func (n *Trait) Walk(v node.Visitor) {
if n.Stmts != nil {
vv := v.GetChildrenVisitor("Stmts")
for _, nn := range n.Stmts {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}

View File

@@ -28,14 +28,18 @@ func (n *TraitUse) Walk(v node.Visitor) {
if n.Traits != nil {
vv := v.GetChildrenVisitor("Traits")
for _, nn := range n.Traits {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}
if n.Adaptations != nil {
vv := v.GetChildrenVisitor("Adaptations")
for _, nn := range n.Adaptations {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}

View File

@@ -30,14 +30,18 @@ func (n *Try) Walk(v node.Visitor) {
if n.Stmts != nil {
vv := v.GetChildrenVisitor("Stmts")
for _, nn := range n.Stmts {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}
if n.Catches != nil {
vv := v.GetChildrenVisitor("Catches")
for _, nn := range n.Catches {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}

View File

@@ -26,7 +26,9 @@ func (n *Unset) Walk(v node.Visitor) {
if n.Vars != nil {
vv := v.GetChildrenVisitor("Vars")
for _, nn := range n.Vars {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}

View File

@@ -33,7 +33,9 @@ func (n *UseList) Walk(v node.Visitor) {
if n.Uses != nil {
vv := v.GetChildrenVisitor("Uses")
for _, nn := range n.Uses {
nn.Walk(vv)
if nn != nil {
nn.Walk(vv)
}
}
}