hi

i have a problem:

# my baseclass
class A
    def initialize(b)
        puts "Initialized A: #{b}"
    end

    # need to call this from B
    def foo(a)
        puts "Foo A: #{a}"
    end
end

# my derived class
class B < A
    def initialize(c)
        super(c)
    # need something here, like A::foo(c) ??
        puts "Initialized B: #{c}"
    end

    def foo(d)
        puts "Foo B: #{d}"
    end
end

I want that if i call B.new(10) that B is initialized and calls the old
function foo from class A (from its ancestor).
but i have to overload the foo function so simply calling foo(c) would not
work.

The Output should be:
> x = B.new(10)
Initialized A: 10
Foo A: 10
Initialized B: 10

> x.foo(20)
Foo B: 20

Any ideas ?

Thanks,

Peter