On Thu, 4 Sep 2008 01:46:41 +0200
Rene Paulokat <[EMAIL PROTECTED]> wrote:
> hallo,
> eine kleine herausforderung -
eine kleine loesung:
meth = %q{def bar(*args) puts "static function bar with args: #{args.inspect}"
end}
eval(my_mod).module_eval(meth)
comments?
> nehmen wir an, ich möchte während der laufzeit einer Applikation ein Module
> im Objectspace verankern:
>
> # bspw. mit:
> class Foobar
> end
> my_mod = 'Foo'
> eval("module #{my_mod}; end")
> if defined?(Foo) # returns 'constant'
> # dann möchte ich dem module etwas funktion beibringen:
> eval(my_mod).send(:define_method, 'bar') { puts "static function 'bar'
> called "}
> # und letztlich der class Foobar ein paar statische methoden mittels my_mod
> beibringen:
> Foobar.extend(eval(my_mod))
> end
> # wie aber parametrisiere ich die zu definierende funktion?
> # also im sinne von :define_method, 'bar(*args)' ...
>
> gruesse
> rene
_______________________________________________
rubyonrails-ug mailing list
[email protected]
http://mailman.headflash.com/mailman/listinfo/rubyonrails-ug