hi all,

in this (http://pastie.caboo.se/97662 ) code :

module Kernel
  def expected_argument_list
    2
  end

  def before (name)
     puts :hola
     define_method(name){
       if expected_argument_list==1
        yield :only_one
       else
        yield :one,:two
       end
     }
  end
end

class A
  before :foo do |*args|
    puts second
  end

  before :foo do |first , second|
    puts second
  end
end

a = A.new
a.foo

 Does anyone know of a way to determine what argument list was
specified when the block is created?

i mean i want to implement  the function expected_argument_list, to
return the length of the argument list that the block expected.
Probably is not possible to do that :(

When are defined the variables of the block, in the class definition
time, or after the yield call?

Thanks

-- 
-------------------------------------
Pedro Del Gallego

Email              :   pedro.delgallego / gmail.com