I want to traverse a binary search tree and output
each node-item.
The following does not compile but I have no idea why not.
The actual argument "v" has type INTEGER_32.
See error message below.
class
APPLICATION
create
make
feature -- Initialization
make is
-- Run application.
local
tree: MY_TREE [INTEGER]
do
create tree.make (500)
tree.put (200)
tree.put (100)
tree.put (150)
tree.put (125)
tree.put (600)
tree.put (550)
tree.put (800)
tree.put (700)
tree.put (650)
tree.put (750)
tree.put (725)
tree.i_infix
end
end -- class APPLICATION
class
MY_TREE [G -> COMPARABLE]
inherit
BINARY_SEARCH_TREE [G]
redefine
node_action
end
create
make
feature -- Cursor movement
node_action (v: like item) is
-- Perfom action on item.
do
io.put_integer (v)
io.put_character (' ')
end
invariant
invariant_clause: True -- Your invariant here
end -- class MY_TREE
Error code: VUAR(2)
Type error: non-conforming actual argument in feature call.
What to do: make sure that type of actual argument conforms to type
of corresponding formal argument.
Class: MY_TREE [G -> COMPARABLE]
Feature: node_action
Called feature: put_integer (i: INTEGER_32) from STD_FILES
Argument name: i
Argument position: 1
Actual argument type: Generic #1
Formal argument type: INTEGER_32
Line: 32
do
-> io.put_integer (v)
io.put_character (' ')
Thanks a lot
Roman