Class: GlooLang::Objs::Integer
- Inherits:
-
Core::Obj
- Object
- Core::Baseo
- Core::Obj
- GlooLang::Objs::Integer
- Defined in:
- lib/gloo_lang/objs/basic/integer.rb
Constant Summary collapse
- KEYWORD =
'integer'.freeze
- KEYWORD_SHORT =
'int'.freeze
Constants inherited from Core::Baseo
Core::Baseo::NOT_IMPLEMENTED_ERR
Instance Attribute Summary
Attributes inherited from Core::Obj
Attributes inherited from Core::Baseo
Class Method Summary collapse
-
.messages ⇒ Object
Get a list of message names that this object receives.
-
.short_typename ⇒ Object
The short name of the object type.
-
.typename ⇒ Object
The name of the object type.
Instance Method Summary collapse
-
#msg_dec ⇒ Object
Decrement the integer.
-
#msg_inc ⇒ Object
Increment the integer.
-
#set_value(new_value) ⇒ Object
Set the value with any necessary type conversions.
Methods inherited from Core::Obj
#add_child, #add_children_on_create?, #add_default_children, can_create?, #can_receive_message?, #child_count, #contains_child?, #delete_children, #dispatch, #display_value, #find_add_child, #find_child, help, inherited, #initialize, #msg_reload, #msg_unload, #multiline_value?, #pn, #remove_child, #root?, #send_message, #set_parent, #type_display, #value_display, #value_is_array?, #value_is_blank?, #value_string?
Methods inherited from Core::Baseo
Constructor Details
This class inherits a constructor from GlooLang::Core::Obj
Class Method Details
.messages ⇒ Object
Get a list of message names that this object receives.
47 48 49 |
# File 'lib/gloo_lang/objs/basic/integer.rb', line 47 def self. return super + %w[inc dec] end |
.short_typename ⇒ Object
The short name of the object type.
24 25 26 |
# File 'lib/gloo_lang/objs/basic/integer.rb', line 24 def self.short_typename return KEYWORD_SHORT end |
.typename ⇒ Object
The name of the object type.
17 18 19 |
# File 'lib/gloo_lang/objs/basic/integer.rb', line 17 def self.typename return KEYWORD end |
Instance Method Details
#msg_dec ⇒ Object
Decrement the integer
64 65 66 67 68 69 |
# File 'lib/gloo_lang/objs/basic/integer.rb', line 64 def msg_dec i = value - 1 set_value i @engine.heap.it.set_to i return i end |
#msg_inc ⇒ Object
Increment the integer
54 55 56 57 58 59 |
# File 'lib/gloo_lang/objs/basic/integer.rb', line 54 def msg_inc i = value + 1 set_value i @engine.heap.it.set_to i return i end |
#set_value(new_value) ⇒ Object
Set the value with any necessary type conversions.
31 32 33 34 35 36 37 38 |
# File 'lib/gloo_lang/objs/basic/integer.rb', line 31 def set_value( new_value ) unless new_value.is_a? Numeric self.value = @engine.converter.convert( new_value, 'Integer', 0 ) return end self.value = new_value.to_i end |