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 [email protected] http://rubyforge.org/mailman/listinfo/ironruby-core
