walker: leave node event
This commit is contained in:
@@ -24,12 +24,14 @@ func NewAltElse(token token.Token, stmt node.Node) node.Node {
|
||||
}
|
||||
|
||||
func (n AltElse) Walk(v node.Visitor) {
|
||||
if v.Visit(n) == false {
|
||||
if v.EnterNode(n) == false {
|
||||
return
|
||||
}
|
||||
|
||||
if n.stmt != nil {
|
||||
vv := v.Children("stmt")
|
||||
vv := v.GetChildrenVisitor("stmt")
|
||||
n.stmt.Walk(vv)
|
||||
}
|
||||
|
||||
v.LeaveNode(n)
|
||||
}
|
||||
|
||||
@@ -26,17 +26,19 @@ func NewAltElseIf(token token.Token, cond node.Node, stmt node.Node) node.Node {
|
||||
}
|
||||
|
||||
func (n AltElseIf) Walk(v node.Visitor) {
|
||||
if v.Visit(n) == false {
|
||||
if v.EnterNode(n) == false {
|
||||
return
|
||||
}
|
||||
|
||||
if n.cond != nil {
|
||||
vv := v.Children("cond")
|
||||
vv := v.GetChildrenVisitor("cond")
|
||||
n.cond.Walk(vv)
|
||||
}
|
||||
|
||||
if n.stmt != nil {
|
||||
vv := v.Children("stmt")
|
||||
vv := v.GetChildrenVisitor("stmt")
|
||||
n.stmt.Walk(vv)
|
||||
}
|
||||
|
||||
v.LeaveNode(n)
|
||||
}
|
||||
|
||||
@@ -46,29 +46,31 @@ func (n AltIf) SetElse(_else node.Node) node.Node {
|
||||
}
|
||||
|
||||
func (n AltIf) Walk(v node.Visitor) {
|
||||
if v.Visit(n) == false {
|
||||
if v.EnterNode(n) == false {
|
||||
return
|
||||
}
|
||||
|
||||
if n.cond != nil {
|
||||
vv := v.Children("cond")
|
||||
vv := v.GetChildrenVisitor("cond")
|
||||
n.cond.Walk(vv)
|
||||
}
|
||||
|
||||
if n.stmt != nil {
|
||||
vv := v.Children("stmt")
|
||||
vv := v.GetChildrenVisitor("stmt")
|
||||
n.stmt.Walk(vv)
|
||||
}
|
||||
|
||||
if n.elseIf != nil {
|
||||
vv := v.Children("elseIf")
|
||||
vv := v.GetChildrenVisitor("elseIf")
|
||||
for _, nn := range n.elseIf {
|
||||
nn.Walk(vv)
|
||||
}
|
||||
}
|
||||
|
||||
if n._else != nil {
|
||||
vv := v.Children("else")
|
||||
vv := v.GetChildrenVisitor("else")
|
||||
n._else.Walk(vv)
|
||||
}
|
||||
|
||||
v.LeaveNode(n)
|
||||
}
|
||||
|
||||
@@ -24,12 +24,14 @@ func NewBreak(token token.Token, expr node.Node) node.Node {
|
||||
}
|
||||
|
||||
func (n Break) Walk(v node.Visitor) {
|
||||
if v.Visit(n) == false {
|
||||
if v.EnterNode(n) == false {
|
||||
return
|
||||
}
|
||||
|
||||
if n.expr != nil {
|
||||
vv := v.Children("expr")
|
||||
vv := v.GetChildrenVisitor("expr")
|
||||
n.expr.Walk(vv)
|
||||
}
|
||||
|
||||
v.LeaveNode(n)
|
||||
}
|
||||
|
||||
@@ -26,19 +26,21 @@ func NewCase(token token.Token, cond node.Node, stmts []node.Node) node.Node {
|
||||
}
|
||||
|
||||
func (n Case) Walk(v node.Visitor) {
|
||||
if v.Visit(n) == false {
|
||||
if v.EnterNode(n) == false {
|
||||
return
|
||||
}
|
||||
|
||||
if n.cond != nil {
|
||||
vv := v.Children("cond")
|
||||
vv := v.GetChildrenVisitor("cond")
|
||||
n.cond.Walk(vv)
|
||||
}
|
||||
|
||||
if n.stmts != nil {
|
||||
vv := v.Children("stmts")
|
||||
vv := v.GetChildrenVisitor("stmts")
|
||||
for _, nn := range n.stmts {
|
||||
nn.Walk(vv)
|
||||
}
|
||||
}
|
||||
|
||||
v.LeaveNode(n)
|
||||
}
|
||||
|
||||
@@ -28,21 +28,23 @@ func NewCatch(token token.Token, types []node.Node, variable node.Node, stmts []
|
||||
}
|
||||
|
||||
func (n Catch) Walk(v node.Visitor) {
|
||||
if v.Visit(n) == false {
|
||||
if v.EnterNode(n) == false {
|
||||
return
|
||||
}
|
||||
|
||||
if n.types != nil {
|
||||
vv := v.Children("types")
|
||||
vv := v.GetChildrenVisitor("types")
|
||||
for _, nn := range n.types {
|
||||
nn.Walk(vv)
|
||||
}
|
||||
}
|
||||
|
||||
if n.stmts != nil {
|
||||
vv := v.Children("stmts")
|
||||
vv := v.GetChildrenVisitor("stmts")
|
||||
for _, nn := range n.stmts {
|
||||
nn.Walk(vv)
|
||||
}
|
||||
}
|
||||
|
||||
v.LeaveNode(n)
|
||||
}
|
||||
|
||||
@@ -32,42 +32,44 @@ func NewClass(token token.Token, modifiers []node.Node, args []node.Node, extend
|
||||
}
|
||||
|
||||
func (n Class) Walk(v node.Visitor) {
|
||||
if v.Visit(n) == false {
|
||||
if v.EnterNode(n) == false {
|
||||
return
|
||||
}
|
||||
|
||||
v.Scalar("token", n.token.Value)
|
||||
|
||||
if n.modifiers != nil {
|
||||
vv := v.Children("modifiers")
|
||||
vv := v.GetChildrenVisitor("modifiers")
|
||||
for _, nn := range n.modifiers {
|
||||
nn.Walk(vv)
|
||||
}
|
||||
}
|
||||
|
||||
if n.args != nil {
|
||||
vv := v.Children("args")
|
||||
vv := v.GetChildrenVisitor("args")
|
||||
for _, nn := range n.args {
|
||||
nn.Walk(vv)
|
||||
}
|
||||
}
|
||||
|
||||
if n.extends != nil {
|
||||
vv := v.Children("extends")
|
||||
vv := v.GetChildrenVisitor("extends")
|
||||
n.extends.Walk(vv)
|
||||
}
|
||||
|
||||
if n.implements != nil {
|
||||
vv := v.Children("implements")
|
||||
vv := v.GetChildrenVisitor("implements")
|
||||
for _, nn := range n.implements {
|
||||
nn.Walk(vv)
|
||||
}
|
||||
}
|
||||
|
||||
if n.stmts != nil {
|
||||
vv := v.Children("stmts")
|
||||
vv := v.GetChildrenVisitor("stmts")
|
||||
for _, nn := range n.stmts {
|
||||
nn.Walk(vv)
|
||||
}
|
||||
}
|
||||
|
||||
v.LeaveNode(n)
|
||||
}
|
||||
|
||||
@@ -26,21 +26,23 @@ func NewClassConstList(token token.Token, modifiers []node.Node, consts []node.N
|
||||
}
|
||||
|
||||
func (n ClassConstList) Walk(v node.Visitor) {
|
||||
if v.Visit(n) == false {
|
||||
if v.EnterNode(n) == false {
|
||||
return
|
||||
}
|
||||
|
||||
if n.modifiers != nil {
|
||||
vv := v.Children("modifiers")
|
||||
vv := v.GetChildrenVisitor("modifiers")
|
||||
for _, nn := range n.modifiers {
|
||||
nn.Walk(vv)
|
||||
}
|
||||
}
|
||||
|
||||
if n.consts != nil {
|
||||
vv := v.Children("consts")
|
||||
vv := v.GetChildrenVisitor("consts")
|
||||
for _, nn := range n.consts {
|
||||
nn.Walk(vv)
|
||||
}
|
||||
}
|
||||
|
||||
v.LeaveNode(n)
|
||||
}
|
||||
|
||||
@@ -32,7 +32,7 @@ func NewClassMethod(token token.Token, modifiers []node.Node, isReturnRef bool,
|
||||
}
|
||||
|
||||
func (n ClassMethod) Walk(v node.Visitor) {
|
||||
if v.Visit(n) == false {
|
||||
if v.EnterNode(n) == false {
|
||||
return
|
||||
}
|
||||
|
||||
@@ -40,28 +40,30 @@ func (n ClassMethod) Walk(v node.Visitor) {
|
||||
v.Scalar("isReturnRef", n.isReturnRef)
|
||||
|
||||
if n.modifiers != nil {
|
||||
vv := v.Children("modifiers")
|
||||
vv := v.GetChildrenVisitor("modifiers")
|
||||
for _, nn := range n.modifiers {
|
||||
nn.Walk(vv)
|
||||
}
|
||||
}
|
||||
|
||||
if n.params != nil {
|
||||
vv := v.Children("params")
|
||||
vv := v.GetChildrenVisitor("params")
|
||||
for _, nn := range n.params {
|
||||
nn.Walk(vv)
|
||||
}
|
||||
}
|
||||
|
||||
if n.returnType != nil {
|
||||
vv := v.Children("returnType")
|
||||
vv := v.GetChildrenVisitor("returnType")
|
||||
n.returnType.Walk(vv)
|
||||
}
|
||||
|
||||
if n.stmts != nil {
|
||||
vv := v.Children("stmts")
|
||||
vv := v.GetChildrenVisitor("stmts")
|
||||
for _, nn := range n.stmts {
|
||||
nn.Walk(vv)
|
||||
}
|
||||
}
|
||||
|
||||
v.LeaveNode(n)
|
||||
}
|
||||
|
||||
@@ -24,14 +24,16 @@ func NewConstList(token token.Token, consts []node.Node) node.Node {
|
||||
}
|
||||
|
||||
func (n ConstList) Walk(v node.Visitor) {
|
||||
if v.Visit(n) == false {
|
||||
if v.EnterNode(n) == false {
|
||||
return
|
||||
}
|
||||
|
||||
if n.consts != nil {
|
||||
vv := v.Children("consts")
|
||||
vv := v.GetChildrenVisitor("consts")
|
||||
for _, nn := range n.consts {
|
||||
nn.Walk(vv)
|
||||
}
|
||||
}
|
||||
|
||||
v.LeaveNode(n)
|
||||
}
|
||||
|
||||
@@ -24,14 +24,16 @@ func NewConstant(token token.Token, expr node.Node) node.Node {
|
||||
}
|
||||
|
||||
func (n Constant) Walk(v node.Visitor) {
|
||||
if v.Visit(n) == false {
|
||||
if v.EnterNode(n) == false {
|
||||
return
|
||||
}
|
||||
|
||||
v.Scalar("token", n.token.Value)
|
||||
|
||||
if n.expr != nil {
|
||||
vv := v.Children("expr")
|
||||
vv := v.GetChildrenVisitor("expr")
|
||||
n.expr.Walk(vv)
|
||||
}
|
||||
|
||||
v.LeaveNode(n)
|
||||
}
|
||||
|
||||
@@ -24,12 +24,14 @@ func NewContinue(token token.Token, expr node.Node) node.Node {
|
||||
}
|
||||
|
||||
func (n Continue) Walk(v node.Visitor) {
|
||||
if v.Visit(n) == false {
|
||||
if v.EnterNode(n) == false {
|
||||
return
|
||||
}
|
||||
|
||||
if n.expr != nil {
|
||||
vv := v.Children("expr")
|
||||
vv := v.GetChildrenVisitor("expr")
|
||||
n.expr.Walk(vv)
|
||||
}
|
||||
|
||||
v.LeaveNode(n)
|
||||
}
|
||||
|
||||
@@ -26,19 +26,21 @@ func NewDeclare(token token.Token, consts []node.Node, stmt node.Node) node.Node
|
||||
}
|
||||
|
||||
func (n Declare) Walk(v node.Visitor) {
|
||||
if v.Visit(n) == false {
|
||||
if v.EnterNode(n) == false {
|
||||
return
|
||||
}
|
||||
|
||||
if n.consts != nil {
|
||||
vv := v.Children("consts")
|
||||
vv := v.GetChildrenVisitor("consts")
|
||||
for _, nn := range n.consts {
|
||||
nn.Walk(vv)
|
||||
}
|
||||
}
|
||||
|
||||
if n.stmt != nil {
|
||||
vv := v.Children("stmt")
|
||||
vv := v.GetChildrenVisitor("stmt")
|
||||
n.stmt.Walk(vv)
|
||||
}
|
||||
|
||||
v.LeaveNode(n)
|
||||
}
|
||||
|
||||
@@ -24,14 +24,16 @@ func NewDefault(token token.Token, stmts []node.Node) node.Node {
|
||||
}
|
||||
|
||||
func (n Default) Walk(v node.Visitor) {
|
||||
if v.Visit(n) == false {
|
||||
if v.EnterNode(n) == false {
|
||||
return
|
||||
}
|
||||
|
||||
if n.stmts != nil {
|
||||
vv := v.Children("stmts")
|
||||
vv := v.GetChildrenVisitor("stmts")
|
||||
for _, nn := range n.stmts {
|
||||
nn.Walk(vv)
|
||||
}
|
||||
}
|
||||
|
||||
v.LeaveNode(n)
|
||||
}
|
||||
|
||||
@@ -26,17 +26,19 @@ func NewDo(token token.Token, stmt node.Node, cond node.Node) node.Node {
|
||||
}
|
||||
|
||||
func (n Do) Walk(v node.Visitor) {
|
||||
if v.Visit(n) == false {
|
||||
if v.EnterNode(n) == false {
|
||||
return
|
||||
}
|
||||
|
||||
if n.cond != nil {
|
||||
vv := v.Children("cond")
|
||||
vv := v.GetChildrenVisitor("cond")
|
||||
n.cond.Walk(vv)
|
||||
}
|
||||
|
||||
if n.stmt != nil {
|
||||
vv := v.Children("stmt")
|
||||
vv := v.GetChildrenVisitor("stmt")
|
||||
n.stmt.Walk(vv)
|
||||
}
|
||||
|
||||
v.LeaveNode(n)
|
||||
}
|
||||
|
||||
@@ -24,14 +24,16 @@ func NewEcho(token token.Token, exprs []node.Node) node.Node {
|
||||
}
|
||||
|
||||
func (n Echo) Walk(v node.Visitor) {
|
||||
if v.Visit(n) == false {
|
||||
if v.EnterNode(n) == false {
|
||||
return
|
||||
}
|
||||
|
||||
if n.exprs != nil {
|
||||
vv := v.Children("exprs")
|
||||
vv := v.GetChildrenVisitor("exprs")
|
||||
for _, nn := range n.exprs {
|
||||
nn.Walk(vv)
|
||||
}
|
||||
}
|
||||
|
||||
v.LeaveNode(n)
|
||||
}
|
||||
|
||||
@@ -24,12 +24,14 @@ func NewElse(token token.Token, stmt node.Node) node.Node {
|
||||
}
|
||||
|
||||
func (n Else) Walk(v node.Visitor) {
|
||||
if v.Visit(n) == false {
|
||||
if v.EnterNode(n) == false {
|
||||
return
|
||||
}
|
||||
|
||||
if n.stmt != nil {
|
||||
vv := v.Children("stmt")
|
||||
vv := v.GetChildrenVisitor("stmt")
|
||||
n.stmt.Walk(vv)
|
||||
}
|
||||
|
||||
v.LeaveNode(n)
|
||||
}
|
||||
|
||||
@@ -26,17 +26,19 @@ func NewElseIf(token token.Token, cond node.Node, stmt node.Node) node.Node {
|
||||
}
|
||||
|
||||
func (n ElseIf) Walk(v node.Visitor) {
|
||||
if v.Visit(n) == false {
|
||||
if v.EnterNode(n) == false {
|
||||
return
|
||||
}
|
||||
|
||||
if n.cond != nil {
|
||||
vv := v.Children("cond")
|
||||
vv := v.GetChildrenVisitor("cond")
|
||||
n.cond.Walk(vv)
|
||||
}
|
||||
|
||||
if n.stmt != nil {
|
||||
vv := v.Children("stmt")
|
||||
vv := v.GetChildrenVisitor("stmt")
|
||||
n.stmt.Walk(vv)
|
||||
}
|
||||
|
||||
v.LeaveNode(n)
|
||||
}
|
||||
|
||||
@@ -21,12 +21,14 @@ func NewExpression(expr node.Node) node.Node {
|
||||
}
|
||||
|
||||
func (n Expression) Walk(v node.Visitor) {
|
||||
if v.Visit(n) == false {
|
||||
if v.EnterNode(n) == false {
|
||||
return
|
||||
}
|
||||
|
||||
if n.expr != nil {
|
||||
vv := v.Children("expr")
|
||||
vv := v.GetChildrenVisitor("expr")
|
||||
n.expr.Walk(vv)
|
||||
}
|
||||
|
||||
v.LeaveNode(n)
|
||||
}
|
||||
|
||||
@@ -24,14 +24,16 @@ func NewFinally(token token.Token, stmts []node.Node) node.Node {
|
||||
}
|
||||
|
||||
func (n Finally) Walk(v node.Visitor) {
|
||||
if v.Visit(n) == false {
|
||||
if v.EnterNode(n) == false {
|
||||
return
|
||||
}
|
||||
|
||||
if n.stmts != nil {
|
||||
vv := v.Children("stmts")
|
||||
vv := v.GetChildrenVisitor("stmts")
|
||||
for _, nn := range n.stmts {
|
||||
nn.Walk(vv)
|
||||
}
|
||||
}
|
||||
|
||||
v.LeaveNode(n)
|
||||
}
|
||||
|
||||
@@ -30,33 +30,35 @@ func NewFor(token token.Token, init []node.Node, cond []node.Node, loop []node.N
|
||||
}
|
||||
|
||||
func (n For) Walk(v node.Visitor) {
|
||||
if v.Visit(n) == false {
|
||||
if v.EnterNode(n) == false {
|
||||
return
|
||||
}
|
||||
|
||||
if n.init != nil {
|
||||
vv := v.Children("init")
|
||||
vv := v.GetChildrenVisitor("init")
|
||||
for _, nn := range n.init {
|
||||
nn.Walk(vv)
|
||||
}
|
||||
}
|
||||
|
||||
if n.cond != nil {
|
||||
vv := v.Children("cond")
|
||||
vv := v.GetChildrenVisitor("cond")
|
||||
for _, nn := range n.cond {
|
||||
nn.Walk(vv)
|
||||
}
|
||||
}
|
||||
|
||||
if n.loop != nil {
|
||||
vv := v.Children("loop")
|
||||
vv := v.GetChildrenVisitor("loop")
|
||||
for _, nn := range n.loop {
|
||||
nn.Walk(vv)
|
||||
}
|
||||
}
|
||||
|
||||
if n.stmt != nil {
|
||||
vv := v.Children("stmt")
|
||||
vv := v.GetChildrenVisitor("stmt")
|
||||
n.stmt.Walk(vv)
|
||||
}
|
||||
|
||||
v.LeaveNode(n)
|
||||
}
|
||||
|
||||
@@ -32,27 +32,29 @@ func NewForeach(token token.Token, expr node.Node, key node.Node, variable node.
|
||||
}
|
||||
|
||||
func (n Foreach) Walk(v node.Visitor) {
|
||||
if v.Visit(n) == false {
|
||||
if v.EnterNode(n) == false {
|
||||
return
|
||||
}
|
||||
|
||||
if n.expr != nil {
|
||||
vv := v.Children("expr")
|
||||
vv := v.GetChildrenVisitor("expr")
|
||||
n.expr.Walk(vv)
|
||||
}
|
||||
|
||||
if n.key != nil {
|
||||
vv := v.Children("key")
|
||||
vv := v.GetChildrenVisitor("key")
|
||||
n.key.Walk(vv)
|
||||
}
|
||||
|
||||
if n.variable != nil {
|
||||
vv := v.Children("variable")
|
||||
vv := v.GetChildrenVisitor("variable")
|
||||
n.variable.Walk(vv)
|
||||
}
|
||||
|
||||
if n.stmt != nil {
|
||||
vv := v.Children("stmt")
|
||||
vv := v.GetChildrenVisitor("stmt")
|
||||
n.stmt.Walk(vv)
|
||||
}
|
||||
|
||||
v.LeaveNode(n)
|
||||
}
|
||||
|
||||
@@ -30,7 +30,7 @@ func NewFunction(token token.Token, isReturnRef bool, params []node.Node, return
|
||||
}
|
||||
|
||||
func (n Function) Walk(v node.Visitor) {
|
||||
if v.Visit(n) == false {
|
||||
if v.EnterNode(n) == false {
|
||||
return
|
||||
}
|
||||
|
||||
@@ -38,21 +38,23 @@ func (n Function) Walk(v node.Visitor) {
|
||||
v.Scalar("isReturnRef", n.isReturnRef)
|
||||
|
||||
if n.params != nil {
|
||||
vv := v.Children("params")
|
||||
vv := v.GetChildrenVisitor("params")
|
||||
for _, nn := range n.params {
|
||||
nn.Walk(vv)
|
||||
}
|
||||
}
|
||||
|
||||
if n.returnType != nil {
|
||||
vv := v.Children("returnType")
|
||||
vv := v.GetChildrenVisitor("returnType")
|
||||
n.returnType.Walk(vv)
|
||||
}
|
||||
|
||||
if n.stmts != nil {
|
||||
vv := v.Children("stmts")
|
||||
vv := v.GetChildrenVisitor("stmts")
|
||||
for _, nn := range n.stmts {
|
||||
nn.Walk(vv)
|
||||
}
|
||||
}
|
||||
|
||||
v.LeaveNode(n)
|
||||
}
|
||||
|
||||
@@ -24,14 +24,16 @@ func NewGlobal(token token.Token, vars []node.Node) node.Node {
|
||||
}
|
||||
|
||||
func (n Global) Walk(v node.Visitor) {
|
||||
if v.Visit(n) == false {
|
||||
if v.EnterNode(n) == false {
|
||||
return
|
||||
}
|
||||
|
||||
if n.vars != nil {
|
||||
vv := v.Children("vars")
|
||||
vv := v.GetChildrenVisitor("vars")
|
||||
for _, nn := range n.vars {
|
||||
nn.Walk(vv)
|
||||
}
|
||||
}
|
||||
|
||||
v.LeaveNode(n)
|
||||
}
|
||||
|
||||
@@ -25,9 +25,11 @@ func NewGoto(token token.Token, label token.Token) node.Node {
|
||||
}
|
||||
|
||||
func (n Goto) Walk(v node.Visitor) {
|
||||
if v.Visit(n) == false {
|
||||
if v.EnterNode(n) == false {
|
||||
return
|
||||
}
|
||||
|
||||
v.Scalar("label", n.label.Value)
|
||||
|
||||
v.LeaveNode(n)
|
||||
}
|
||||
|
||||
@@ -39,24 +39,26 @@ func (n GroupUse) SetUseType(useType node.Node) node.Node {
|
||||
}
|
||||
|
||||
func (n GroupUse) Walk(v node.Visitor) {
|
||||
if v.Visit(n) == false {
|
||||
if v.EnterNode(n) == false {
|
||||
return
|
||||
}
|
||||
|
||||
if n.useType != nil {
|
||||
vv := v.Children("useType")
|
||||
vv := v.GetChildrenVisitor("useType")
|
||||
n.useType.Walk(vv)
|
||||
}
|
||||
|
||||
if n.prefix != nil {
|
||||
vv := v.Children("prefix")
|
||||
vv := v.GetChildrenVisitor("prefix")
|
||||
n.prefix.Walk(vv)
|
||||
}
|
||||
|
||||
if n.useList != nil {
|
||||
vv := v.Children("useList")
|
||||
vv := v.GetChildrenVisitor("useList")
|
||||
for _, nn := range n.useList {
|
||||
nn.Walk(vv)
|
||||
}
|
||||
}
|
||||
|
||||
v.LeaveNode(n)
|
||||
}
|
||||
|
||||
@@ -22,7 +22,9 @@ func NewHaltCompiler(token token.Token) node.Node {
|
||||
}
|
||||
|
||||
func (n HaltCompiler) Walk(v node.Visitor) {
|
||||
if v.Visit(n) == false {
|
||||
if v.EnterNode(n) == false {
|
||||
return
|
||||
}
|
||||
|
||||
v.LeaveNode(n)
|
||||
}
|
||||
|
||||
@@ -46,29 +46,31 @@ func (n If) SetElse(_else node.Node) node.Node {
|
||||
}
|
||||
|
||||
func (n If) Walk(v node.Visitor) {
|
||||
if v.Visit(n) == false {
|
||||
if v.EnterNode(n) == false {
|
||||
return
|
||||
}
|
||||
|
||||
if n.cond != nil {
|
||||
vv := v.Children("cond")
|
||||
vv := v.GetChildrenVisitor("cond")
|
||||
n.cond.Walk(vv)
|
||||
}
|
||||
|
||||
if n.stmt != nil {
|
||||
vv := v.Children("stmt")
|
||||
vv := v.GetChildrenVisitor("stmt")
|
||||
n.stmt.Walk(vv)
|
||||
}
|
||||
|
||||
if n.elseIf != nil {
|
||||
vv := v.Children("elseIf")
|
||||
vv := v.GetChildrenVisitor("elseIf")
|
||||
for _, nn := range n.elseIf {
|
||||
nn.Walk(vv)
|
||||
}
|
||||
}
|
||||
|
||||
if n._else != nil {
|
||||
vv := v.Children("else")
|
||||
vv := v.GetChildrenVisitor("else")
|
||||
n._else.Walk(vv)
|
||||
}
|
||||
|
||||
v.LeaveNode(n)
|
||||
}
|
||||
|
||||
@@ -22,9 +22,11 @@ func NewInlineHtml(token token.Token) node.Node {
|
||||
}
|
||||
|
||||
func (n InlineHtml) Walk(v node.Visitor) {
|
||||
if v.Visit(n) == false {
|
||||
if v.EnterNode(n) == false {
|
||||
return
|
||||
}
|
||||
|
||||
v.Scalar("token", n.token.Value)
|
||||
|
||||
v.LeaveNode(n)
|
||||
}
|
||||
|
||||
@@ -28,23 +28,25 @@ func NewInterface(token token.Token, name token.Token, extends []node.Node, stmt
|
||||
}
|
||||
|
||||
func (n Interface) Walk(v node.Visitor) {
|
||||
if v.Visit(n) == false {
|
||||
if v.EnterNode(n) == false {
|
||||
return
|
||||
}
|
||||
|
||||
v.Scalar("token", n.interfaceName.Value)
|
||||
|
||||
if n.extends != nil {
|
||||
vv := v.Children("extends")
|
||||
vv := v.GetChildrenVisitor("extends")
|
||||
for _, nn := range n.extends {
|
||||
nn.Walk(vv)
|
||||
}
|
||||
}
|
||||
|
||||
if n.stmts != nil {
|
||||
vv := v.Children("stmts")
|
||||
vv := v.GetChildrenVisitor("stmts")
|
||||
for _, nn := range n.stmts {
|
||||
nn.Walk(vv)
|
||||
}
|
||||
}
|
||||
|
||||
v.LeaveNode(n)
|
||||
}
|
||||
|
||||
@@ -22,9 +22,11 @@ func NewLabel(token token.Token) node.Node {
|
||||
}
|
||||
|
||||
func (n Label) Walk(v node.Visitor) {
|
||||
if v.Visit(n) == false {
|
||||
if v.EnterNode(n) == false {
|
||||
return
|
||||
}
|
||||
|
||||
v.Scalar("token", n.token.Value)
|
||||
|
||||
v.LeaveNode(n)
|
||||
}
|
||||
|
||||
@@ -26,19 +26,21 @@ func NewNamespace(token token.Token, namespaceName node.Node, stmts []node.Node)
|
||||
}
|
||||
|
||||
func (n Namespace) Walk(v node.Visitor) {
|
||||
if v.Visit(n) == false {
|
||||
if v.EnterNode(n) == false {
|
||||
return
|
||||
}
|
||||
|
||||
if n.namespaceName != nil {
|
||||
vv := v.Children("namespaceName")
|
||||
vv := v.GetChildrenVisitor("namespaceName")
|
||||
n.namespaceName.Walk(vv)
|
||||
}
|
||||
|
||||
if n.stmts != nil {
|
||||
vv := v.Children("stmts")
|
||||
vv := v.GetChildrenVisitor("stmts")
|
||||
for _, nn := range n.stmts {
|
||||
nn.Walk(vv)
|
||||
}
|
||||
}
|
||||
|
||||
v.LeaveNode(n)
|
||||
}
|
||||
|
||||
@@ -29,9 +29,11 @@ func (n Nop) Print(out io.Writer, indent string) {
|
||||
}
|
||||
|
||||
func (n Nop) Walk(v node.Visitor) {
|
||||
if v.Visit(n) == false {
|
||||
if v.EnterNode(n) == false {
|
||||
return
|
||||
}
|
||||
|
||||
v.Scalar("token", n.token.Value)
|
||||
|
||||
v.LeaveNode(n)
|
||||
}
|
||||
|
||||
@@ -24,14 +24,16 @@ func NewProperty(token token.Token, expr node.Node) node.Node {
|
||||
}
|
||||
|
||||
func (n Property) Walk(v node.Visitor) {
|
||||
if v.Visit(n) == false {
|
||||
if v.EnterNode(n) == false {
|
||||
return
|
||||
}
|
||||
|
||||
v.Scalar("token", n.token.Value)
|
||||
|
||||
if n.expr != nil {
|
||||
vv := v.Children("expr")
|
||||
vv := v.GetChildrenVisitor("expr")
|
||||
n.expr.Walk(vv)
|
||||
}
|
||||
|
||||
v.LeaveNode(n)
|
||||
}
|
||||
|
||||
@@ -23,21 +23,23 @@ func NewPropertyList(modifiers []node.Node, properties []node.Node) node.Node {
|
||||
}
|
||||
|
||||
func (n PropertyList) Walk(v node.Visitor) {
|
||||
if v.Visit(n) == false {
|
||||
if v.EnterNode(n) == false {
|
||||
return
|
||||
}
|
||||
|
||||
if n.modifiers != nil {
|
||||
vv := v.Children("modifiers")
|
||||
vv := v.GetChildrenVisitor("modifiers")
|
||||
for _, nn := range n.modifiers {
|
||||
nn.Walk(vv)
|
||||
}
|
||||
}
|
||||
|
||||
if n.properties != nil {
|
||||
vv := v.Children("properties")
|
||||
vv := v.GetChildrenVisitor("properties")
|
||||
for _, nn := range n.properties {
|
||||
nn.Walk(vv)
|
||||
}
|
||||
}
|
||||
|
||||
v.LeaveNode(n)
|
||||
}
|
||||
|
||||
@@ -24,12 +24,14 @@ func NewReturn(token token.Token, expr node.Node) node.Node {
|
||||
}
|
||||
|
||||
func (n Return) Walk(v node.Visitor) {
|
||||
if v.Visit(n) == false {
|
||||
if v.EnterNode(n) == false {
|
||||
return
|
||||
}
|
||||
|
||||
if n.expr != nil {
|
||||
vv := v.Children("expr")
|
||||
vv := v.GetChildrenVisitor("expr")
|
||||
n.expr.Walk(vv)
|
||||
}
|
||||
|
||||
v.LeaveNode(n)
|
||||
}
|
||||
|
||||
@@ -24,14 +24,16 @@ func NewStatic(token token.Token, vars []node.Node) node.Node {
|
||||
}
|
||||
|
||||
func (n Static) Walk(v node.Visitor) {
|
||||
if v.Visit(n) == false {
|
||||
if v.EnterNode(n) == false {
|
||||
return
|
||||
}
|
||||
|
||||
if n.vars != nil {
|
||||
vv := v.Children("vars")
|
||||
vv := v.GetChildrenVisitor("vars")
|
||||
for _, nn := range n.vars {
|
||||
nn.Walk(vv)
|
||||
}
|
||||
}
|
||||
|
||||
v.LeaveNode(n)
|
||||
}
|
||||
|
||||
@@ -24,12 +24,14 @@ func NewStaticVar(token token.Token, expr node.Node) node.Node {
|
||||
}
|
||||
|
||||
func (n StaticVar) Walk(v node.Visitor) {
|
||||
if v.Visit(n) == false {
|
||||
if v.EnterNode(n) == false {
|
||||
return
|
||||
}
|
||||
|
||||
if n.expr != nil {
|
||||
vv := v.Children("expr")
|
||||
vv := v.GetChildrenVisitor("expr")
|
||||
n.expr.Walk(vv)
|
||||
}
|
||||
|
||||
v.LeaveNode(n)
|
||||
}
|
||||
|
||||
@@ -21,14 +21,16 @@ func NewStmtList(stmts []node.Node) node.Node {
|
||||
}
|
||||
|
||||
func (n StmtList) Walk(v node.Visitor) {
|
||||
if v.Visit(n) == false {
|
||||
if v.EnterNode(n) == false {
|
||||
return
|
||||
}
|
||||
|
||||
if n.stmts != nil {
|
||||
vv := v.Children("stmts")
|
||||
vv := v.GetChildrenVisitor("stmts")
|
||||
for _, nn := range n.stmts {
|
||||
nn.Walk(vv)
|
||||
}
|
||||
}
|
||||
|
||||
v.LeaveNode(n)
|
||||
}
|
||||
|
||||
@@ -26,19 +26,21 @@ func NewSwitch(token token.Token, cond node.Node, cases []node.Node) node.Node {
|
||||
}
|
||||
|
||||
func (n Switch) Walk(v node.Visitor) {
|
||||
if v.Visit(n) == false {
|
||||
if v.EnterNode(n) == false {
|
||||
return
|
||||
}
|
||||
|
||||
if n.cond != nil {
|
||||
vv := v.Children("cond")
|
||||
vv := v.GetChildrenVisitor("cond")
|
||||
n.cond.Walk(vv)
|
||||
}
|
||||
|
||||
if n.cases != nil {
|
||||
vv := v.Children("cases")
|
||||
vv := v.GetChildrenVisitor("cases")
|
||||
for _, nn := range n.cases {
|
||||
nn.Walk(vv)
|
||||
}
|
||||
}
|
||||
|
||||
v.LeaveNode(n)
|
||||
}
|
||||
|
||||
@@ -24,12 +24,14 @@ func NewThrow(token token.Token, expr node.Node) node.Node {
|
||||
}
|
||||
|
||||
func (n Throw) Walk(v node.Visitor) {
|
||||
if v.Visit(n) == false {
|
||||
if v.EnterNode(n) == false {
|
||||
return
|
||||
}
|
||||
|
||||
if n.expr != nil {
|
||||
vv := v.Children("expr")
|
||||
vv := v.GetChildrenVisitor("expr")
|
||||
n.expr.Walk(vv)
|
||||
}
|
||||
|
||||
v.LeaveNode(n)
|
||||
}
|
||||
|
||||
@@ -25,16 +25,18 @@ func NewTrait(token token.Token, stmts []node.Node) node.Node {
|
||||
}
|
||||
|
||||
func (n Trait) Walk(v node.Visitor) {
|
||||
if v.Visit(n) == false {
|
||||
if v.EnterNode(n) == false {
|
||||
return
|
||||
}
|
||||
|
||||
v.Scalar("token", n.token.Value)
|
||||
|
||||
if n.stmts != nil {
|
||||
vv := v.Children("stmts")
|
||||
vv := v.GetChildrenVisitor("stmts")
|
||||
for _, nn := range n.stmts {
|
||||
nn.Walk(vv)
|
||||
}
|
||||
}
|
||||
|
||||
v.LeaveNode(n)
|
||||
}
|
||||
|
||||
@@ -25,14 +25,16 @@ func NewTraitMethodRef(trait node.Node, method token.Token) node.Node {
|
||||
}
|
||||
|
||||
func (n TraitMethodRef) Walk(v node.Visitor) {
|
||||
if v.Visit(n) == false {
|
||||
if v.EnterNode(n) == false {
|
||||
return
|
||||
}
|
||||
|
||||
v.Scalar("method", n.method.Value)
|
||||
|
||||
if n.trait != nil {
|
||||
vv := v.Children("trait")
|
||||
vv := v.GetChildrenVisitor("trait")
|
||||
n.trait.Walk(vv)
|
||||
}
|
||||
|
||||
v.LeaveNode(n)
|
||||
}
|
||||
|
||||
@@ -27,21 +27,23 @@ func NewTraitUse(token token.Token, traits []node.Node, adaptations []node.Node)
|
||||
}
|
||||
|
||||
func (n TraitUse) Walk(v node.Visitor) {
|
||||
if v.Visit(n) == false {
|
||||
if v.EnterNode(n) == false {
|
||||
return
|
||||
}
|
||||
|
||||
if n.traits != nil {
|
||||
vv := v.Children("traits")
|
||||
vv := v.GetChildrenVisitor("traits")
|
||||
for _, nn := range n.traits {
|
||||
nn.Walk(vv)
|
||||
}
|
||||
}
|
||||
|
||||
if n.adaptations != nil {
|
||||
vv := v.Children("adaptations")
|
||||
vv := v.GetChildrenVisitor("adaptations")
|
||||
for _, nn := range n.adaptations {
|
||||
nn.Walk(vv)
|
||||
}
|
||||
}
|
||||
|
||||
v.LeaveNode(n)
|
||||
}
|
||||
|
||||
@@ -26,17 +26,19 @@ func NewTraitUseAlias(ref node.Node, modifier node.Node, alias token.TokenInterf
|
||||
}
|
||||
|
||||
func (n TraitUseAlias) Walk(v node.Visitor) {
|
||||
if v.Visit(n) == false {
|
||||
if v.EnterNode(n) == false {
|
||||
return
|
||||
}
|
||||
|
||||
if n.ref != nil {
|
||||
vv := v.Children("ref")
|
||||
vv := v.GetChildrenVisitor("ref")
|
||||
n.ref.Walk(vv)
|
||||
}
|
||||
|
||||
if n.modifier != nil {
|
||||
vv := v.Children("modifier")
|
||||
vv := v.GetChildrenVisitor("modifier")
|
||||
n.modifier.Walk(vv)
|
||||
}
|
||||
|
||||
v.LeaveNode(n)
|
||||
}
|
||||
|
||||
@@ -23,17 +23,19 @@ func NewTraitUsePrecedence(ref node.Node, insteadof node.Node) node.Node {
|
||||
}
|
||||
|
||||
func (n TraitUsePrecedence) Walk(v node.Visitor) {
|
||||
if v.Visit(n) == false {
|
||||
if v.EnterNode(n) == false {
|
||||
return
|
||||
}
|
||||
|
||||
if n.ref != nil {
|
||||
vv := v.Children("ref")
|
||||
vv := v.GetChildrenVisitor("ref")
|
||||
n.ref.Walk(vv)
|
||||
}
|
||||
|
||||
if n.insteadof != nil {
|
||||
vv := v.Children("insteadof")
|
||||
vv := v.GetChildrenVisitor("insteadof")
|
||||
n.insteadof.Walk(vv)
|
||||
}
|
||||
|
||||
v.LeaveNode(n)
|
||||
}
|
||||
|
||||
@@ -28,26 +28,28 @@ func NewTry(token token.Token, stmts []node.Node, catches []node.Node, finally n
|
||||
}
|
||||
|
||||
func (n Try) Walk(v node.Visitor) {
|
||||
if v.Visit(n) == false {
|
||||
if v.EnterNode(n) == false {
|
||||
return
|
||||
}
|
||||
|
||||
if n.stmts != nil {
|
||||
vv := v.Children("stmts")
|
||||
vv := v.GetChildrenVisitor("stmts")
|
||||
for _, nn := range n.stmts {
|
||||
nn.Walk(vv)
|
||||
}
|
||||
}
|
||||
|
||||
if n.catches != nil {
|
||||
vv := v.Children("catches")
|
||||
vv := v.GetChildrenVisitor("catches")
|
||||
for _, nn := range n.catches {
|
||||
nn.Walk(vv)
|
||||
}
|
||||
}
|
||||
|
||||
if n.finally != nil {
|
||||
vv := v.Children("finally")
|
||||
vv := v.GetChildrenVisitor("finally")
|
||||
n.finally.Walk(vv)
|
||||
}
|
||||
|
||||
v.LeaveNode(n)
|
||||
}
|
||||
|
||||
@@ -24,14 +24,16 @@ func NewUnset(token token.Token, vars []node.Node) node.Node {
|
||||
}
|
||||
|
||||
func (n Unset) Walk(v node.Visitor) {
|
||||
if v.Visit(n) == false {
|
||||
if v.EnterNode(n) == false {
|
||||
return
|
||||
}
|
||||
|
||||
if n.vars != nil {
|
||||
vv := v.Children("vars")
|
||||
vv := v.GetChildrenVisitor("vars")
|
||||
for _, nn := range n.vars {
|
||||
nn.Walk(vv)
|
||||
}
|
||||
}
|
||||
|
||||
v.LeaveNode(n)
|
||||
}
|
||||
|
||||
@@ -31,17 +31,19 @@ func (n Use) SetType(useType node.Node) node.Node {
|
||||
}
|
||||
|
||||
func (n Use) Walk(v node.Visitor) {
|
||||
if v.Visit(n) == false {
|
||||
if v.EnterNode(n) == false {
|
||||
return
|
||||
}
|
||||
|
||||
if n.useType != nil {
|
||||
vv := v.Children("useType")
|
||||
vv := v.GetChildrenVisitor("useType")
|
||||
n.useType.Walk(vv)
|
||||
}
|
||||
|
||||
if n.use != nil {
|
||||
vv := v.Children("use")
|
||||
vv := v.GetChildrenVisitor("use")
|
||||
n.use.Walk(vv)
|
||||
}
|
||||
|
||||
v.LeaveNode(n)
|
||||
}
|
||||
|
||||
@@ -26,19 +26,21 @@ func NewUseList(token token.Token, useType node.Node, uses []node.Node) node.Nod
|
||||
}
|
||||
|
||||
func (n UseList) Walk(v node.Visitor) {
|
||||
if v.Visit(n) == false {
|
||||
if v.EnterNode(n) == false {
|
||||
return
|
||||
}
|
||||
|
||||
if n.useType != nil {
|
||||
vv := v.Children("useType")
|
||||
vv := v.GetChildrenVisitor("useType")
|
||||
n.useType.Walk(vv)
|
||||
}
|
||||
|
||||
if n.uses != nil {
|
||||
vv := v.Children("uses")
|
||||
vv := v.GetChildrenVisitor("uses")
|
||||
for _, nn := range n.uses {
|
||||
nn.Walk(vv)
|
||||
}
|
||||
}
|
||||
|
||||
v.LeaveNode(n)
|
||||
}
|
||||
|
||||
@@ -26,17 +26,19 @@ func (n While) Name() string {
|
||||
}
|
||||
|
||||
func (n While) Walk(v node.Visitor) {
|
||||
if v.Visit(n) == false {
|
||||
if v.EnterNode(n) == false {
|
||||
return
|
||||
}
|
||||
|
||||
if n.cond != nil {
|
||||
vv := v.Children("cond")
|
||||
vv := v.GetChildrenVisitor("cond")
|
||||
n.cond.Walk(vv)
|
||||
}
|
||||
|
||||
if n.stmt != nil {
|
||||
vv := v.Children("stmt")
|
||||
vv := v.GetChildrenVisitor("stmt")
|
||||
n.stmt.Walk(vv)
|
||||
}
|
||||
|
||||
v.LeaveNode(n)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user