Skip to content

Commit

Permalink
merge "Fix #1313 with a little redirection" from 3809805
Browse files Browse the repository at this point in the history
  • Loading branch information
Watson1978 committed Mar 3, 2012
1 parent 64b2cf6 commit d4a47c0
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 2 deletions.
3 changes: 2 additions & 1 deletion ext/json/generator/generator.c
Expand Up @@ -1322,7 +1322,8 @@ void Init_generator()
rb_define_method(cState, "generate", cState_generate, 1);

mGeneratorMethods = rb_define_module_under(mGenerator, "GeneratorMethods");
mObject = rb_define_module_under(mGeneratorMethods, "Object");
// XXX MACRUBY Change Object ot LOLObject until ticket #1326 is resolved
mObject = rb_define_module_under(mGeneratorMethods, "JSONObject");
rb_define_method(mObject, "to_json", mObject_to_json, -1);
mHash = rb_define_module_under(mGeneratorMethods, "Hash");
rb_define_method(mHash, "to_json", mHash_to_json, -1);
Expand Down
10 changes: 9 additions & 1 deletion ext/json/lib/json/common.rb
Expand Up @@ -52,7 +52,15 @@ def generator=(generator) # :nodoc:
@generator = generator
generator_methods = generator::GeneratorMethods
for const in generator_methods.constants
klass = deep_const_get(const)
# XXX MACRUBY Hijack const to mix into Cocoa classes instead
real_const = case const
when :Array then :NSArray
when :Hash then :NSDictionary
when :String then :NSString
when :JSONObject then :Object
else const
end
klass = deep_const_get(real_const)
modul = generator_methods.const_get(const)
klass.class_eval do
instance_methods(false).each do |m|
Expand Down

0 comments on commit d4a47c0

Please sign in to comment.