gloo 0.5.4 → 0.7.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitignore +1 -0
- data/Gemfile.lock +1 -1
- data/lib/gloo/app/args.rb +48 -6
- data/lib/gloo/app/engine.rb +60 -38
- data/lib/gloo/app/help.rb +137 -16
- data/lib/gloo/app/info.rb +3 -1
- data/lib/gloo/app/log.rb +23 -0
- data/lib/gloo/app/mode.rb +2 -0
- data/lib/gloo/app/settings.rb +98 -47
- data/lib/gloo/convert/converter.rb +35 -0
- data/lib/gloo/convert/string_to_datetime.rb +1 -1
- data/lib/gloo/convert/string_to_decimal.rb +1 -1
- data/lib/gloo/convert/string_to_integer.rb +1 -1
- data/lib/gloo/core/dictionary.rb +99 -22
- data/lib/gloo/core/error.rb +19 -8
- data/lib/gloo/core/event_manager.rb +4 -0
- data/lib/gloo/core/factory.rb +11 -0
- data/lib/gloo/core/gloo_system.rb +1 -1
- data/lib/gloo/core/heap.rb +11 -3
- data/lib/gloo/core/here.rb +36 -0
- data/lib/gloo/core/it.rb +6 -0
- data/lib/gloo/core/literal.rb +5 -0
- data/lib/gloo/core/obj.rb +22 -0
- data/lib/gloo/core/op.rb +7 -0
- data/lib/gloo/core/parser.rb +6 -0
- data/lib/gloo/core/pn.rb +38 -0
- data/lib/gloo/core/tokens.rb +66 -22
- data/lib/gloo/core/verb.rb +12 -0
- data/lib/gloo/exec/action.rb +48 -0
- data/lib/gloo/exec/dispatch.rb +15 -5
- data/lib/gloo/exec/exec_env.rb +74 -0
- data/lib/gloo/exec/runner.rb +4 -2
- data/lib/gloo/{core → exec}/script.rb +21 -9
- data/lib/gloo/exec/stack.rb +78 -0
- data/lib/gloo/expr/expression.rb +26 -4
- data/lib/gloo/expr/l_boolean.rb +6 -0
- data/lib/gloo/expr/l_decimal.rb +5 -0
- data/lib/gloo/expr/l_integer.rb +7 -0
- data/lib/gloo/expr/l_string.rb +7 -0
- data/lib/gloo/expr/op_div.rb +2 -0
- data/lib/gloo/expr/op_minus.rb +2 -0
- data/lib/gloo/expr/op_mult.rb +2 -0
- data/lib/gloo/expr/op_plus.rb +2 -0
- data/lib/gloo/help/app/application.txt +22 -0
- data/lib/gloo/help/app/configuration.txt +7 -0
- data/lib/gloo/help/app/default_help.txt +14 -0
- data/lib/gloo/help/app/logging.txt +16 -0
- data/lib/gloo/help/core/color.txt +31 -0
- data/lib/gloo/help/core/error.txt +33 -0
- data/lib/gloo/help/core/events.txt +21 -0
- data/lib/gloo/help/core/gloo_system.txt +54 -0
- data/lib/gloo/help/core/here.txt +30 -0
- data/lib/gloo/help/core/it.txt +23 -0
- data/lib/gloo/help/core/ops.txt +16 -0
- data/lib/gloo/help/core/pathname.txt +29 -0
- data/lib/gloo/help/objs/basic/alias.txt +36 -0
- data/lib/gloo/help/objs/basic/boolean.txt +28 -0
- data/lib/gloo/help/objs/basic/container.txt +33 -0
- data/lib/gloo/help/objs/basic/decimal.txt +28 -0
- data/lib/gloo/help/objs/basic/integer.txt +27 -0
- data/lib/gloo/help/objs/basic/script.txt +29 -0
- data/lib/gloo/help/objs/basic/string.txt +28 -0
- data/lib/gloo/help/objs/basic/text.txt +27 -0
- data/lib/gloo/help/objs/basic/untyped.txt +22 -0
- data/lib/gloo/help/objs/cli/banner.txt +49 -0
- data/lib/gloo/help/objs/cli/bar.txt +34 -0
- data/lib/gloo/help/objs/cli/colorize.txt +33 -0
- data/lib/gloo/help/objs/cli/confirm.txt +26 -0
- data/lib/gloo/help/objs/cli/menu.txt +44 -0
- data/lib/gloo/help/objs/cli/menu_item.txt +26 -0
- data/lib/gloo/help/objs/cli/pastel.txt +43 -0
- data/lib/gloo/help/objs/cli/prompt.txt +27 -0
- data/lib/gloo/help/objs/cli/select.txt +34 -0
- data/lib/gloo/help/objs/ctrl/each.txt +48 -0
- data/lib/gloo/help/objs/ctrl/repeat.txt +38 -0
- data/lib/gloo/help/objs/data/markdown.txt +25 -0
- data/lib/gloo/help/objs/data/table.txt +46 -0
- data/lib/gloo/help/objs/dev/git_repo.txt +35 -0
- data/lib/gloo/help/objs/dt/date.txt +23 -0
- data/lib/gloo/help/objs/dt/datetime.txt +24 -0
- data/lib/gloo/help/objs/dt/time.txt +23 -0
- data/lib/gloo/help/objs/ror/erb.txt +37 -0
- data/lib/gloo/help/objs/ror/eval.txt +24 -0
- data/lib/gloo/help/objs/snd/play.txt +23 -0
- data/lib/gloo/help/objs/snd/say.txt +28 -0
- data/lib/gloo/help/objs/system/file.txt +41 -0
- data/lib/gloo/help/objs/system/system.txt +32 -0
- data/lib/gloo/help/objs/web/http_get.txt +35 -0
- data/lib/gloo/help/objs/web/http_post.txt +32 -0
- data/lib/gloo/help/objs/web/json.txt +34 -0
- data/lib/gloo/help/objs/web/slack.txt +33 -0
- data/lib/gloo/help/objs/web/teams.txt +30 -0
- data/lib/gloo/help/objs/web/uri.txt +37 -0
- data/lib/gloo/help/verbs/alert.txt +33 -0
- data/lib/gloo/help/verbs/beep.txt +25 -0
- data/lib/gloo/help/verbs/cls.txt +24 -0
- data/lib/gloo/help/verbs/context.txt +43 -0
- data/lib/gloo/help/verbs/create.txt +33 -0
- data/lib/gloo/help/verbs/execute.txt +27 -0
- data/lib/gloo/help/verbs/help.txt +34 -0
- data/lib/gloo/help/verbs/if.txt +37 -0
- data/lib/gloo/help/verbs/list.txt +34 -0
- data/lib/gloo/help/verbs/load.txt +38 -0
- data/lib/gloo/help/verbs/move.txt +42 -0
- data/lib/gloo/help/verbs/put.txt +38 -0
- data/lib/gloo/help/verbs/quit.txt +25 -0
- data/lib/gloo/help/verbs/run.txt +41 -0
- data/lib/gloo/help/verbs/save.txt +26 -0
- data/lib/gloo/help/verbs/show.txt +30 -0
- data/lib/gloo/help/verbs/tell.txt +34 -0
- data/lib/gloo/help/verbs/unless.txt +38 -0
- data/lib/gloo/help/verbs/version.txt +32 -0
- data/lib/gloo/help/verbs/wait.txt +29 -0
- data/lib/gloo/objs/basic/alias.rb +0 -33
- data/lib/gloo/objs/basic/boolean.rb +6 -27
- data/lib/gloo/objs/basic/container.rb +0 -33
- data/lib/gloo/objs/basic/decimal.rb +8 -28
- data/lib/gloo/objs/basic/integer.rb +5 -26
- data/lib/gloo/objs/basic/script.rb +1 -27
- data/lib/gloo/objs/basic/string.rb +6 -26
- data/lib/gloo/objs/basic/text.rb +0 -25
- data/lib/gloo/objs/basic/untyped.rb +0 -26
- data/lib/gloo/objs/cli/banner.rb +0 -29
- data/lib/gloo/objs/cli/bar.rb +0 -29
- data/lib/gloo/objs/cli/colorize.rb +4 -34
- data/lib/gloo/objs/cli/confirm.rb +6 -36
- data/lib/gloo/objs/cli/menu.rb +6 -36
- data/lib/gloo/objs/cli/menu_item.rb +0 -33
- data/lib/gloo/objs/cli/pastel.rb +4 -27
- data/lib/gloo/objs/cli/prompt.rb +4 -28
- data/lib/gloo/objs/cli/select.rb +4 -31
- data/lib/gloo/objs/ctrl/each.rb +33 -33
- data/lib/gloo/objs/ctrl/repeat.rb +8 -29
- data/lib/gloo/objs/data/markdown.rb +0 -25
- data/lib/gloo/objs/data/table.rb +4 -32
- data/lib/gloo/objs/dev/git.rb +12 -30
- data/lib/gloo/objs/dt/date.rb +3 -25
- data/lib/gloo/objs/dt/datetime.rb +4 -26
- data/lib/gloo/objs/dt/time.rb +3 -25
- data/lib/gloo/objs/ror/erb.rb +11 -45
- data/lib/gloo/objs/ror/eval.rb +11 -38
- data/lib/gloo/objs/snd/play.rb +2 -25
- data/lib/gloo/objs/snd/say.rb +9 -31
- data/lib/gloo/objs/system/file_handle.rb +0 -38
- data/lib/gloo/objs/system/system.rb +16 -46
- data/lib/gloo/objs/web/http_get.rb +57 -83
- data/lib/gloo/objs/web/http_post.rb +8 -31
- data/lib/gloo/objs/web/json.rb +11 -31
- data/lib/gloo/objs/web/slack.rb +7 -34
- data/lib/gloo/objs/web/teams.rb +13 -48
- data/lib/gloo/objs/web/uri.rb +0 -29
- data/lib/gloo/persist/file_loader.rb +8 -0
- data/lib/gloo/persist/file_saver.rb +6 -0
- data/lib/gloo/persist/file_storage.rb +2 -0
- data/lib/gloo/persist/line_splitter.rb +2 -0
- data/lib/gloo/persist/persist_man.rb +6 -0
- data/lib/gloo/verbs/alert.rb +30 -44
- data/lib/gloo/verbs/beep.rb +0 -30
- data/lib/gloo/verbs/cls.rb +0 -30
- data/lib/gloo/verbs/context.rb +9 -39
- data/lib/gloo/verbs/create.rb +17 -32
- data/lib/gloo/verbs/execute.rb +52 -0
- data/lib/gloo/verbs/help.rb +151 -115
- data/lib/gloo/verbs/if.rb +46 -44
- data/lib/gloo/verbs/list.rb +36 -54
- data/lib/gloo/verbs/load.rb +8 -37
- data/lib/gloo/verbs/move.rb +12 -51
- data/lib/gloo/verbs/put.rb +28 -52
- data/lib/gloo/verbs/quit.rb +0 -31
- data/lib/gloo/verbs/run.rb +23 -39
- data/lib/gloo/verbs/save.rb +0 -33
- data/lib/gloo/verbs/show.rb +6 -31
- data/lib/gloo/verbs/tell.rb +31 -31
- data/lib/gloo/verbs/unless.rb +47 -46
- data/lib/gloo/verbs/version.rb +0 -30
- data/lib/gloo/verbs/wait.rb +0 -31
- metadata +79 -3
@@ -0,0 +1,26 @@
|
|
1
|
+
SAVE VERB
|
2
|
+
NAME: save
|
3
|
+
SHORTCUT: >
|
4
|
+
|
5
|
+
DESCRIPTION
|
6
|
+
Save a previously loaded object to .gloo file. The path will be for the
|
7
|
+
root level object that was loaded earlier.
|
8
|
+
|
9
|
+
SYNTAX
|
10
|
+
save <path.to.object>
|
11
|
+
|
12
|
+
PARAMETERS
|
13
|
+
path.to.object - Name of the object file that is to be saved.
|
14
|
+
|
15
|
+
RESULT
|
16
|
+
The file is updated with the latest object state.
|
17
|
+
|
18
|
+
ERRORS
|
19
|
+
None
|
20
|
+
|
21
|
+
EXAMPLE
|
22
|
+
|
23
|
+
> save my_obj
|
24
|
+
|
25
|
+
SEE ALSO
|
26
|
+
load
|
@@ -0,0 +1,30 @@
|
|
1
|
+
SHOW VERB
|
2
|
+
NAME: show
|
3
|
+
SHORTCUT: =
|
4
|
+
|
5
|
+
DESCRIPTION
|
6
|
+
Show an object's value.
|
7
|
+
|
8
|
+
SYNTAX
|
9
|
+
show <path.to.object>
|
10
|
+
|
11
|
+
PARAMETERS
|
12
|
+
path.to.object - The object that we want to see.
|
13
|
+
|
14
|
+
RESULT
|
15
|
+
The object's value is shown.
|
16
|
+
<it> will contain the object's value.
|
17
|
+
|
18
|
+
ERRORS
|
19
|
+
None
|
20
|
+
|
21
|
+
EXAMPLE
|
22
|
+
|
23
|
+
> show "me"
|
24
|
+
> show "hello " "world"
|
25
|
+
> show 132 * 23
|
26
|
+
|
27
|
+
> create x : "boo"
|
28
|
+
> show x
|
29
|
+
|
30
|
+
SEE ALSO
|
@@ -0,0 +1,34 @@
|
|
1
|
+
TELL VERB
|
2
|
+
NAME: tell
|
3
|
+
SHORTCUT: ->
|
4
|
+
|
5
|
+
DESCRIPTION
|
6
|
+
Send a message to an object.
|
7
|
+
Ask the object to perform an action.
|
8
|
+
|
9
|
+
SYNTAX
|
10
|
+
tell <path.to.object> to <message>
|
11
|
+
|
12
|
+
PARAMETERS
|
13
|
+
path.to.object - The object that we want to see.
|
14
|
+
message - The message to send.
|
15
|
+
|
16
|
+
RESULT
|
17
|
+
The result depends on the message that is sent.
|
18
|
+
|
19
|
+
ERRORS
|
20
|
+
Missing message!
|
21
|
+
- No message was specified, or the 'to' keyword is missing.
|
22
|
+
|
23
|
+
Object was not found
|
24
|
+
- The target of the message was not found.
|
25
|
+
|
26
|
+
EXAMPLE
|
27
|
+
|
28
|
+
> tell an.obj to unload
|
29
|
+
> tell the.script to run
|
30
|
+
> tell my.str to up
|
31
|
+
> tell the.container to count
|
32
|
+
|
33
|
+
SEE ALSO
|
34
|
+
run
|
@@ -0,0 +1,38 @@
|
|
1
|
+
UNLESS VERB
|
2
|
+
NAME: unless
|
3
|
+
SHORTCUT: if!
|
4
|
+
|
5
|
+
DESCRIPTION
|
6
|
+
Unless an expression is true, do something.
|
7
|
+
This is the opposite of the if verb.
|
8
|
+
|
9
|
+
SYNTAX
|
10
|
+
unless <true> do <command>
|
11
|
+
|
12
|
+
PARAMETERS
|
13
|
+
true - Does the expression evaluate to true?
|
14
|
+
command - Execute command if the expression is not true.
|
15
|
+
|
16
|
+
RESULT
|
17
|
+
Unchanged if the expression is true.
|
18
|
+
If not true, then the result will be based on the command
|
19
|
+
specified after the 'do' keyword.
|
20
|
+
|
21
|
+
ERRORS
|
22
|
+
Missing Expression!
|
23
|
+
- No expression is provided as parameter to the verb.
|
24
|
+
|
25
|
+
Other errors depend on the command that is run.
|
26
|
+
|
27
|
+
EXAMPLE
|
28
|
+
|
29
|
+
unless [container] :
|
30
|
+
x [bool] : true
|
31
|
+
false_msg [string] : It is NOT true!
|
32
|
+
on_load [script] :
|
33
|
+
unless unless.x do show "first time: " + unless.false_msg
|
34
|
+
put false into unless.x
|
35
|
+
unless unless.x do show "second time: " + unless.false_msg
|
36
|
+
|
37
|
+
SEE ALSO
|
38
|
+
if
|
@@ -0,0 +1,32 @@
|
|
1
|
+
VERSION VERB
|
2
|
+
NAME: version
|
3
|
+
SHORTCUT: v
|
4
|
+
|
5
|
+
DESCRIPTION
|
6
|
+
Show the application version information.
|
7
|
+
|
8
|
+
This is the same as showing the version by running gloo
|
9
|
+
with the --version command line parameter.
|
10
|
+
|
11
|
+
SYNTAX
|
12
|
+
version
|
13
|
+
|
14
|
+
PARAMETERS
|
15
|
+
None
|
16
|
+
|
17
|
+
RESULT
|
18
|
+
None
|
19
|
+
|
20
|
+
ERRORS
|
21
|
+
None
|
22
|
+
|
23
|
+
EXAMPLE
|
24
|
+
|
25
|
+
> version
|
26
|
+
> v
|
27
|
+
|
28
|
+
This is the same as running this from the command line:
|
29
|
+
|
30
|
+
> gloo --version
|
31
|
+
|
32
|
+
SEE ALSO
|
@@ -0,0 +1,29 @@
|
|
1
|
+
WAIT VERB
|
2
|
+
NAME: wait
|
3
|
+
SHORTCUT: w
|
4
|
+
|
5
|
+
DESCRIPTION
|
6
|
+
Wait for the given number of seconds.
|
7
|
+
|
8
|
+
SYNTAX
|
9
|
+
wait <seconds>
|
10
|
+
|
11
|
+
PARAMETERS
|
12
|
+
seconds - The number of seconds.
|
13
|
+
If no value is given, we'll wait for 1 second.
|
14
|
+
|
15
|
+
RESULT
|
16
|
+
None
|
17
|
+
|
18
|
+
ERRORS
|
19
|
+
None
|
20
|
+
|
21
|
+
EXAMPLE
|
22
|
+
|
23
|
+
> wait
|
24
|
+
> wait 3
|
25
|
+
|
26
|
+
> create x as int : 10
|
27
|
+
> wait x
|
28
|
+
|
29
|
+
SEE ALSO
|
@@ -73,39 +73,6 @@ module Gloo
|
|
73
73
|
return ln.resolve
|
74
74
|
end
|
75
75
|
|
76
|
-
# ---------------------------------------------------------------------
|
77
|
-
# Help
|
78
|
-
# ---------------------------------------------------------------------
|
79
|
-
|
80
|
-
#
|
81
|
-
# Get help for this object type.
|
82
|
-
#
|
83
|
-
def self.help
|
84
|
-
return <<~TEXT
|
85
|
-
ALIAS OBJECT TYPE
|
86
|
-
NAME: alias
|
87
|
-
SHORTCUT: ln
|
88
|
-
|
89
|
-
DESCRIPTION
|
90
|
-
A pointer to another object.
|
91
|
-
Normal path-name references will refere to the aliased object.
|
92
|
-
To refer to the alias itself, add an * at the end of the path-name.
|
93
|
-
This is neeed, for example, to set the value of the alias.
|
94
|
-
The value of the alias is merely the path-name of the
|
95
|
-
referenced object.
|
96
|
-
|
97
|
-
CHILDREN
|
98
|
-
None
|
99
|
-
|
100
|
-
MESSAGES
|
101
|
-
The alias will reflect the mesages of the object to which
|
102
|
-
it points.
|
103
|
-
The alias itself can receive the following message:
|
104
|
-
resolve - Check to see if the object referenced exists.
|
105
|
-
Sets it to true or false.
|
106
|
-
TEXT
|
107
|
-
end
|
108
|
-
|
109
76
|
end
|
110
77
|
end
|
111
78
|
end
|
@@ -84,7 +84,9 @@ module Gloo
|
|
84
84
|
return super + %w[not true false]
|
85
85
|
end
|
86
86
|
|
87
|
+
#
|
87
88
|
# Set the value to the opposite of what it is.
|
89
|
+
#
|
88
90
|
def msg_not
|
89
91
|
v = !value
|
90
92
|
set_value v
|
@@ -92,47 +94,24 @@ module Gloo
|
|
92
94
|
return v
|
93
95
|
end
|
94
96
|
|
97
|
+
#
|
95
98
|
# Set the value to true.
|
99
|
+
#
|
96
100
|
def msg_true
|
97
101
|
set_value true
|
98
102
|
$engine.heap.it.set_to true
|
99
103
|
return true
|
100
104
|
end
|
101
105
|
|
106
|
+
#
|
102
107
|
# Set the value to false.
|
108
|
+
#
|
103
109
|
def msg_false
|
104
110
|
set_value false
|
105
111
|
$engine.heap.it.set_to false
|
106
112
|
return false
|
107
113
|
end
|
108
114
|
|
109
|
-
# ---------------------------------------------------------------------
|
110
|
-
# Help
|
111
|
-
# ---------------------------------------------------------------------
|
112
|
-
|
113
|
-
#
|
114
|
-
# Get help for this object type.
|
115
|
-
#
|
116
|
-
def self.help
|
117
|
-
return <<~TEXT
|
118
|
-
BOOLEAN OBJECT TYPE
|
119
|
-
NAME: boolean
|
120
|
-
SHORTCUT: bool
|
121
|
-
|
122
|
-
DESCRIPTION
|
123
|
-
A boolean value.
|
124
|
-
Value will be either true or false.
|
125
|
-
|
126
|
-
CHILDREN
|
127
|
-
None
|
128
|
-
|
129
|
-
MESSAGES
|
130
|
-
not - Set the boolean to the opposite of what it is now.
|
131
|
-
true - Set the boolean to true.
|
132
|
-
false - Set the boolean to false.
|
133
|
-
TEXT
|
134
|
-
end
|
135
|
-
|
136
115
|
end
|
137
116
|
end
|
138
117
|
end
|
@@ -71,39 +71,6 @@ module Gloo
|
|
71
71
|
puts "\n #{rendered}\n\n"
|
72
72
|
end
|
73
73
|
|
74
|
-
# ---------------------------------------------------------------------
|
75
|
-
# Help
|
76
|
-
# ---------------------------------------------------------------------
|
77
|
-
|
78
|
-
#
|
79
|
-
# Get help for this object type.
|
80
|
-
#
|
81
|
-
def self.help
|
82
|
-
return <<~TEXT
|
83
|
-
CONTAINER OBJECT TYPE
|
84
|
-
NAME: container
|
85
|
-
SHORTCUT: can
|
86
|
-
|
87
|
-
DESCRIPTION
|
88
|
-
A container of other objects.
|
89
|
-
A container is similar to a folder in a file system.
|
90
|
-
It can contain any number of objects including other containers.
|
91
|
-
The container structure provides direct access to any object
|
92
|
-
within it through the object.object.object path-name structure.
|
93
|
-
|
94
|
-
CHILDREN
|
95
|
-
None by default. But any container can have any number of
|
96
|
-
objects added to it.
|
97
|
-
|
98
|
-
MESSAGES
|
99
|
-
count - Count the number of children objects in the container.
|
100
|
-
The result is put in <it>.
|
101
|
-
delete_children - Delete all children objects from the container.
|
102
|
-
show_key_value_tbl - Show a table with key (name) and values
|
103
|
-
for all children in the container.
|
104
|
-
TEXT
|
105
|
-
end
|
106
|
-
|
107
74
|
end
|
108
75
|
end
|
109
76
|
end
|
@@ -35,7 +35,7 @@ module Gloo
|
|
35
35
|
end
|
36
36
|
|
37
37
|
unless new_value.is_a? Numeric
|
38
|
-
self.value = $engine.convert( new_value, 'Decimal', 0.0 )
|
38
|
+
self.value = $engine.converter.convert( new_value, 'Decimal', 0.0 )
|
39
39
|
return
|
40
40
|
end
|
41
41
|
|
@@ -59,38 +59,18 @@ module Gloo
|
|
59
59
|
# round to the precision given.
|
60
60
|
#
|
61
61
|
def msg_round
|
62
|
-
|
62
|
+
data = 0
|
63
|
+
if @params&.token_count&.positive?
|
64
|
+
expr = Gloo::Expr::Expression.new( @params.tokens )
|
65
|
+
data = expr.evaluate.to_i
|
66
|
+
end
|
67
|
+
|
68
|
+
i = self.value.round( data )
|
63
69
|
set_value i
|
64
70
|
$engine.heap.it.set_to i
|
65
71
|
return i
|
66
72
|
end
|
67
73
|
|
68
|
-
# ---------------------------------------------------------------------
|
69
|
-
# Help
|
70
|
-
# ---------------------------------------------------------------------
|
71
|
-
|
72
|
-
#
|
73
|
-
# Get help for this object type.
|
74
|
-
#
|
75
|
-
def self.help
|
76
|
-
return <<~TEXT
|
77
|
-
DECIMAL OBJECT TYPE
|
78
|
-
NAME: decimal
|
79
|
-
SHORTCUT: num
|
80
|
-
|
81
|
-
DESCRIPTION
|
82
|
-
A decimal (numeric) value.
|
83
|
-
|
84
|
-
CHILDREN
|
85
|
-
None
|
86
|
-
|
87
|
-
MESSAGES
|
88
|
-
round - Round to the nearest whole value.
|
89
|
-
If an optional parameter is included, round to the
|
90
|
-
precision specified.
|
91
|
-
TEXT
|
92
|
-
end
|
93
|
-
|
94
74
|
end
|
95
75
|
end
|
96
76
|
end
|
@@ -30,7 +30,7 @@ module Gloo
|
|
30
30
|
#
|
31
31
|
def set_value( new_value )
|
32
32
|
unless new_value.is_a? Numeric
|
33
|
-
self.value = $engine.convert( new_value, 'Integer', 0 )
|
33
|
+
self.value = $engine.converter.convert( new_value, 'Integer', 0 )
|
34
34
|
return
|
35
35
|
end
|
36
36
|
|
@@ -48,7 +48,9 @@ module Gloo
|
|
48
48
|
return super + %w[inc dec]
|
49
49
|
end
|
50
50
|
|
51
|
+
#
|
51
52
|
# Increment the integer
|
53
|
+
#
|
52
54
|
def msg_inc
|
53
55
|
i = value + 1
|
54
56
|
set_value i
|
@@ -56,7 +58,9 @@ module Gloo
|
|
56
58
|
return i
|
57
59
|
end
|
58
60
|
|
61
|
+
#
|
59
62
|
# Decrement the integer
|
63
|
+
#
|
60
64
|
def msg_dec
|
61
65
|
i = value - 1
|
62
66
|
set_value i
|
@@ -64,31 +68,6 @@ module Gloo
|
|
64
68
|
return i
|
65
69
|
end
|
66
70
|
|
67
|
-
# ---------------------------------------------------------------------
|
68
|
-
# Help
|
69
|
-
# ---------------------------------------------------------------------
|
70
|
-
|
71
|
-
#
|
72
|
-
# Get help for this object type.
|
73
|
-
#
|
74
|
-
def self.help
|
75
|
-
return <<~TEXT
|
76
|
-
INTEGER OBJECT TYPE
|
77
|
-
NAME: integer
|
78
|
-
SHORTCUT: int
|
79
|
-
|
80
|
-
DESCRIPTION
|
81
|
-
An integer (numeric) value.
|
82
|
-
|
83
|
-
CHILDREN
|
84
|
-
None
|
85
|
-
|
86
|
-
MESSAGES
|
87
|
-
inc - Increment the integer value by 1.
|
88
|
-
dec - Decrement the integer value by 1.
|
89
|
-
TEXT
|
90
|
-
end
|
91
|
-
|
92
71
|
end
|
93
72
|
end
|
94
73
|
end
|