Java Reference
In-Depth Information
class
Visitor
/
Generic visit
/
28
procedure
visit
(AbstractNode
n
)
n
.
accept(
this
)
end
end
29
class
TypeChecking
extends
Visitor
procedure
30
visit
( IfNode
i
)
end
procedure
visit
(PlusNode
p
)
end
procedure
visit
(MinusNode
m
)
end
end
class
IfNode
extends
AbstractNode
procedure
accept
(Visitor
v
)
31
v
.
visit(
this
)
end
...
end
class
PlusNode
extends
AbstractNode
procedure
accept
(Visitor
v
)
32
v
.
visit(
this
)
end
...
end
class
MinusNode
extends
AbstractNode
33
procedure
accept
(Visitor
v
)
34
v
.
visit(
this
)
end
...
end
Figure 7.23: Visitor pattern