Module: Myco::PrimitiveInstanceMethods

Included in:
InstanceMethods
Defined in:
lib/myco/bootstrap/instance.rb

Instance Method Summary collapse

Instance Method Details

#__class__Object



27
28
29
30
# File 'lib/myco/bootstrap/instance.rb', line 27

def __class__
  Rubinius.primitive :object_class
  ::Kernel.raise ::PrimitiveFailure, "Rubinius.primitive :object_class failed"
end

#__dup__Object

TODO: remove



32
33
34
35
36
# File 'lib/myco/bootstrap/instance.rb', line 32

def __dup__ # TODO: remove
  copy = Rubinius::Type.object_class(self).allocate
  Rubinius.invoke_primitive :object_copy_object, copy, self
  copy
end

#__equal__(other) ⇒ Object



61
62
63
64
# File 'lib/myco/bootstrap/instance.rb', line 61

def __equal__(other)
  Rubinius.primitive :object_equal
  ::Kernel.raise ::PrimitiveFailure, "Rubinius.primitive :object_equal failed"
end

#__get_ivar__(sym) ⇒ Object



12
13
14
15
# File 'lib/myco/bootstrap/instance.rb', line 12

def __get_ivar__ sym
  Rubinius.primitive :object_get_ivar
  ::Kernel.raise ::PrimitiveFailure, "Rubinius.primitive :object_get_ivar failed"
end

#__hash__Object



38
39
40
41
# File 'lib/myco/bootstrap/instance.rb', line 38

def __hash__
  Rubinius.primitive :object_hash
  ::Kernel.raise ::PrimitiveFailure, "Rubinius.primitive :object_hash failed"
end

#__id__Object



51
52
53
54
# File 'lib/myco/bootstrap/instance.rb', line 51

def __id__
  Rubinius.primitive :object_id
  ::Kernel.raise ::PrimitiveFailure, "Rubinius.primitive :object_id failed"
end

#__ivar_defined__(sym) ⇒ Object



17
18
19
20
# File 'lib/myco/bootstrap/instance.rb', line 17

def __ivar_defined__ sym
  Rubinius.primitive :object_ivar_defined
  ::Kernel.raise ::PrimitiveFailure, "Rubinius.primitive :object_ivar_defined failed"
end

#__ivar_names__Object



56
57
58
59
# File 'lib/myco/bootstrap/instance.rb', line 56

def __ivar_names__
  Rubinius.primitive :object_ivar_names
  ::Kernel.raise ::PrimitiveFailure, "Rubinius.primitive :object_ivar_names failed"
end

#__kind_of__(mod) ⇒ Object



22
23
24
25
# File 'lib/myco/bootstrap/instance.rb', line 22

def __kind_of__ mod
  Rubinius.primitive :object_kind_of
  ::Kernel.raise ::PrimitiveFailure, "Rubinius.primitive :object_kind_of failed"
end

#__send__(message, *args) ⇒ Object

These methods are taken from Ruby’s BasicObject. TODO: Audit which of these should remain.



46
47
48
49
# File 'lib/myco/bootstrap/instance.rb', line 46

def __send__ message, *args
  Rubinius.primitive :object_send
  ::Kernel.raise ::PrimitiveFailure, "Rubinius.primitive :object_send failed"
end

#__set_ivar__(sym, value) ⇒ Object

These methods are taken from Ruby’s Kernel. TODO: Audit which of these should remain.



7
8
9
10
# File 'lib/myco/bootstrap/instance.rb', line 7

def __set_ivar__ sym, value
  Rubinius.primitive :object_set_ivar
  ::Kernel.raise ::PrimitiveFailure, "Rubinius.primitive :object_set_ivar failed"
end