Skip to content

Commit 5cc56f3

Browse files
committedOct 14, 2013
Name anonymous classes when assigning to a constant
1 parent 34f06e3 commit 5cc56f3

File tree

2 files changed

+6
-6
lines changed

2 files changed

+6
-6
lines changed
 

‎corelib/module.rb

+2-6
Original file line numberDiff line numberDiff line change
@@ -252,13 +252,9 @@ def const_set(name, value)
252252
rescue
253253
raise TypeError, 'conversion with #to_str failed'
254254
end
255-
%x{
256-
#{self}._scope[name] = #{value};
257-
258-
if (value._isClass && value._name === nil) {
259-
value._name = #{self.name} + '::' + name;
260-
}
261255

256+
%x{
257+
$opal.casgn(self, name, value);
262258
return #{value}
263259
}
264260
end

‎corelib/runtime.js

+4
Original file line numberDiff line numberDiff line change
@@ -332,6 +332,10 @@
332332
Opal.casgn = function(base_module, name, value) {
333333
var scope = base_module._scope;
334334

335+
if (value._isClass && value._name === nil) {
336+
value._name = base_module._name + '::' + name;
337+
}
338+
335339
scope.constants.push(name);
336340
return scope[name] = value;
337341
};

0 commit comments

Comments
 (0)
Please sign in to comment.