After a hack to work around the previous regular expression substitution problem, we continue ...
1) throw exception "Malformed version number" (due to $1 returning nil after a successful match) - fixed my previous Regexp.=== patch to set CurrentMatch in current scope, see attached patch 2) $1 still incorrectly returns nil - fixed trivial index range bug in RubyScope.GetCurrentMatchGroup, see attached patch 3) Wrong number or type of arguments for method "module_eval" - created module_eval aliases for each class_eval method in Builtins.ModuleOps - corrected signatures for overloads that take a code string with file name and line number - implemented these new methods by calling the version that takes code string (and ignoring the other parameters) (see attached patch) 4) Wrong number or type of arguments for method "private" - generalized ModuleOps.SetPrivateVisibility to take param array of obects rather than Symbols and cast them to symbols, see attached patch. - will need to do the same for protected, public and top-level versions of these methods 5) Wrong number or type of arguments for method "define_method" - created overloaded version of define_method that takes method name string and converts it to Symbol, see attached patch. 6) Undefined method "module_function" - not yet implemented in ModuleOps. - this one looks a little tricker, so I'll leave it to someone with greater knowledge of the IronRuby internals ... Cheers, Wayne.
ModuleOps.patch
Description: ModuleOps.patch
Reqexp.patch
Description: Reqexp.patch
RubyScope.patch
Description: RubyScope.patch
_______________________________________________ Ironruby-core mailing list Ironruby-core@rubyforge.org http://rubyforge.org/mailman/listinfo/ironruby-core