Re-enable spec/library for full CI runs.
[rbx.git] / kernel / core / object.rb
blob8f90826fa58759b1a3f34005f968e16913929f9e
1 class Object
3   #--
4   # deprecated in MRI 1.9
5   #++
7   VERSION = Rubinius::RUBY_VERSION
8   RUBY_VERSION = Rubinius::RUBY_VERSION
9   RUBY_PATCHLEVEL = Rubinius::RUBY_PATCHLEVEL
10   RUBY_ENGINE = Rubinius::RUBY_ENGINE
11   RBX_VERSION = Rubinius::RBX_VERSION
13   ivar_as_index :__ivars__ => 0
15   def __ivars__; @__ivars__ ; end
16   private :__ivars__
18   def initialize
19   end
20   private :initialize
22   def instance_variable_validate(name)
23     # adapted from rb_to_id
24     case name
25     when Symbol
26       return name if name.to_s[0] == ?@
27     when String
28       return name.intern if name[0] == ?@
29     when Fixnum
30       raise ArgumentError.new("#{name.inspect} is not a symbol")
31     else
32       raise TypeError.new("#{name.inspect} is not a symbol") unless name.respond_to?(:to_str)
33       name = name.to_str
34       return name.to_sym if name[0] == ?@
35     end
36     
37     raise NameError.new("`#{name}' is not allowed as an instance variable name")
38   end
39   private :instance_variable_validate
41   def self.after_loaded
42     private :__find_method__
43     private :get_instance_variable
44     private :get_instance_variables
45     private :set_instance_variable
46   end
48   def display(port=$>)
49     port.write self
50   end
51 end