gloo 6.0.1 → 6.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CLAUDE.md +9 -3
- data/README.md +39 -7
- data/docs/application.md +184 -0
- data/docs/getting_started.md +110 -0
- data/docs/iterators.md +294 -0
- data/docs/language_objects.md +190 -0
- data/docs/language_scripting.md +62 -0
- data/docs/language_syntax.md +334 -0
- data/docs/objects.md +77 -0
- data/docs/operators.md +62 -0
- data/docs/plugins.md +376 -0
- data/docs/verbs.md +64 -0
- data/docs/web_app.md +211 -0
- data/gloo.gemspec +3 -1
- data/lib/VERSION +1 -1
- data/lib/VERSION_NOTES +16 -0
- data/lib/gloo/app/engine.rb +17 -2
- data/lib/gloo/app/log.rb +5 -4
- data/lib/gloo/app/platform.rb +34 -2
- data/lib/gloo/app/prompt.rb +2 -1
- data/lib/gloo/app/settings.rb +25 -15
- data/lib/gloo/app/table.rb +7 -3
- data/lib/gloo/app/theme.rb +144 -0
- data/lib/gloo/core/gloo_system.rb +52 -1
- data/lib/gloo/core/invoker.rb +102 -0
- data/lib/gloo/core/parser.rb +48 -7
- data/lib/gloo/core/tokens.rb +81 -1
- data/lib/gloo/docs/doc_data.rb +160 -0
- data/lib/gloo/docs/help_shell.rb +332 -0
- data/lib/gloo/docs/markdown_renderer.rb +39 -0
- data/lib/gloo/expr/call.rb +54 -0
- data/lib/gloo/expr/expression.rb +3 -0
- data/lib/gloo/objs/basic/alias.rb +53 -0
- data/lib/gloo/objs/basic/boolean.rb +30 -0
- data/lib/gloo/objs/basic/container.rb +38 -0
- data/lib/gloo/objs/basic/decimal.rb +30 -0
- data/lib/gloo/objs/basic/integer.rb +58 -0
- data/lib/gloo/objs/basic/script.rb +31 -0
- data/lib/gloo/objs/basic/string.rb +31 -4
- data/lib/gloo/objs/basic/string_msgs.rb +212 -2
- data/lib/gloo/objs/basic/text.rb +30 -4
- data/lib/gloo/objs/basic/untyped.rb +21 -0
- data/lib/gloo/objs/ctrl/each.rb +63 -1
- data/lib/gloo/objs/ctrl/function.rb +86 -4
- data/lib/gloo/objs/ctrl/repeat.rb +41 -0
- data/lib/gloo/objs/dt/date.rb +43 -0
- data/lib/gloo/objs/dt/datetime.rb +50 -0
- data/lib/gloo/objs/dt/time.rb +43 -0
- data/lib/gloo/objs/str_utils/cipher.rb +59 -0
- data/lib/gloo/objs/str_utils/outline.rb +65 -1
- data/lib/gloo/objs/str_utils/password.rb +56 -0
- data/lib/gloo/objs/system/erb.rb +39 -0
- data/lib/gloo/objs/system/file_handle.rb +56 -0
- data/lib/gloo/objs/system/system.rb +29 -0
- data/lib/gloo/objs/web/http_get.rb +35 -0
- data/lib/gloo/objs/web/http_post.rb +33 -0
- data/lib/gloo/objs/web/json.rb +40 -0
- data/lib/gloo/objs/web/uri.rb +40 -0
- data/lib/gloo/shell/command_node.rb +39 -0
- data/lib/gloo/shell/context.rb +93 -0
- data/lib/gloo/shell/runner.rb +315 -0
- data/lib/gloo/verbs/break.rb +32 -0
- data/lib/gloo/verbs/check.rb +49 -0
- data/lib/gloo/verbs/cls.rb +18 -0
- data/lib/gloo/verbs/context.rb +47 -0
- data/lib/gloo/verbs/create.rb +42 -0
- data/lib/gloo/verbs/eval.rb +27 -0
- data/lib/gloo/verbs/execute.rb +27 -0
- data/lib/gloo/verbs/exists.rb +54 -2
- data/lib/gloo/verbs/files.rb +22 -0
- data/lib/gloo/verbs/help.rb +46 -178
- data/lib/gloo/verbs/if.rb +52 -0
- data/lib/gloo/verbs/invoke.rb +88 -33
- data/lib/gloo/verbs/list.rb +37 -4
- data/lib/gloo/verbs/load.rb +55 -2
- data/lib/gloo/verbs/log.rb +44 -0
- data/lib/gloo/verbs/move.rb +36 -1
- data/lib/gloo/verbs/put.rb +35 -0
- data/lib/gloo/verbs/quit.rb +19 -0
- data/lib/gloo/verbs/redirect.rb +52 -2
- data/lib/gloo/verbs/reload.rb +27 -0
- data/lib/gloo/verbs/run.rb +39 -0
- data/lib/gloo/verbs/save.rb +26 -0
- data/lib/gloo/verbs/show.rb +54 -0
- data/lib/gloo/verbs/tell.rb +32 -0
- data/lib/gloo/verbs/throw.rb +29 -0
- data/lib/gloo/verbs/unless.rb +50 -0
- data/lib/gloo/verbs/unload.rb +23 -0
- data/lib/gloo/verbs/version.rb +37 -3
- data/lib/gloo/verbs/wait.rb +26 -0
- data/test.gloo/objs/string.test.gloo +54 -0
- data/test.gloo/verbs/invoke.test.gloo +73 -0
- metadata +26 -10
- data/.DS_Store +0 -0
- data/.travis.yml +0 -5
|
@@ -18,3 +18,76 @@ tests [can] :
|
|
|
18
18
|
invoke tests.verbs.invoke.f
|
|
19
19
|
eval it = 42
|
|
20
20
|
assert "expected it to be 42"
|
|
21
|
+
|
|
22
|
+
add [ƒ] :
|
|
23
|
+
on_invoke [script] :
|
|
24
|
+
put ^.params.x + ^.params.y into ^.result
|
|
25
|
+
params [can] :
|
|
26
|
+
x [int] :
|
|
27
|
+
y [int] :
|
|
28
|
+
result [int] :
|
|
29
|
+
|
|
30
|
+
total [int] :
|
|
31
|
+
|
|
32
|
+
inline_invoke_in_show_test [test] :
|
|
33
|
+
description [string] : Inline invoke( ... ) works inside show.
|
|
34
|
+
on_test [script] :
|
|
35
|
+
show invoke( tests.verbs.invoke.add 3 4 )
|
|
36
|
+
eval it = 7
|
|
37
|
+
assert "expected it to be 7"
|
|
38
|
+
|
|
39
|
+
inline_shortcut_in_show_test [test] :
|
|
40
|
+
description [string] : Inline ~>( ... ) works inside show, same as invoke( ... ).
|
|
41
|
+
on_test [script] :
|
|
42
|
+
show ~>( tests.verbs.invoke.add 3 4 )
|
|
43
|
+
eval it = 7
|
|
44
|
+
assert "expected it to be 7"
|
|
45
|
+
|
|
46
|
+
inline_invoke_with_operator_test [test] :
|
|
47
|
+
description [string] : Inline invoke( ... ) composes with an operator.
|
|
48
|
+
on_test [script] :
|
|
49
|
+
show "Total: " + invoke( tests.verbs.invoke.add 3 4 )
|
|
50
|
+
eval it = "Total: 7"
|
|
51
|
+
assert "expected it to be 'Total: 7'"
|
|
52
|
+
|
|
53
|
+
inline_invoke_in_put_test [test] :
|
|
54
|
+
description [string] : Inline invoke( ... ) works inside put ... into.
|
|
55
|
+
on_test [script] :
|
|
56
|
+
put 0 into ^^.total
|
|
57
|
+
put invoke( tests.verbs.invoke.add 3 4 ) into ^^.total
|
|
58
|
+
eval ^^.total = 7
|
|
59
|
+
assert "expected total to be 7"
|
|
60
|
+
|
|
61
|
+
inline_invoke_in_if_test [test] :
|
|
62
|
+
description [string] : Inline invoke( ... ) works inside if.
|
|
63
|
+
on_test [script] :
|
|
64
|
+
eval false
|
|
65
|
+
if invoke( tests.verbs.invoke.add 3 4 ) = 7 then eval true
|
|
66
|
+
assert "expected the if branch to have run"
|
|
67
|
+
|
|
68
|
+
err_fired [bool] : false
|
|
69
|
+
|
|
70
|
+
on_error [script] :
|
|
71
|
+
put true into ^.err_fired
|
|
72
|
+
|
|
73
|
+
inline_invoke_error_test [test] :
|
|
74
|
+
description [string] : Inline invoke( ... ) reports an error for an unresolved target, same as the standalone verb.
|
|
75
|
+
on_test [script] :
|
|
76
|
+
put false into ^^.err_fired
|
|
77
|
+
show invoke( tests.verbs.invoke.no_such_function )
|
|
78
|
+
eval ^^.err_fired = true
|
|
79
|
+
assert "expected on_error to have fired for an unresolved inline call target"
|
|
80
|
+
|
|
81
|
+
greet [ƒ] :
|
|
82
|
+
on_invoke [script] :
|
|
83
|
+
put 'Hi, ' + ^.params.name into ^.result
|
|
84
|
+
params [can] :
|
|
85
|
+
name [string] :
|
|
86
|
+
result [string] :
|
|
87
|
+
|
|
88
|
+
inline_invoke_with_quoted_arg_test [test] :
|
|
89
|
+
description [string] : A quoted string arg inside invoke( ... ) is passed through as one arg, not split on its internal space.
|
|
90
|
+
on_test [script] :
|
|
91
|
+
show invoke( tests.verbs.invoke.greet "Bob Smith" )
|
|
92
|
+
eval it = "Hi, Bob Smith"
|
|
93
|
+
assert "expected it to be 'Hi, Bob Smith'"
|
metadata
CHANGED
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: gloo
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 6.0
|
|
4
|
+
version: 6.2.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Eric Crane
|
|
8
|
-
autorequire:
|
|
9
8
|
bindir: exe
|
|
10
9
|
cert_chain: []
|
|
11
|
-
date:
|
|
10
|
+
date: 1980-01-02 00:00:00.000000000 Z
|
|
12
11
|
dependencies:
|
|
13
12
|
- !ruby/object:Gem::Dependency
|
|
14
13
|
name: bundler
|
|
@@ -251,12 +250,10 @@ executables:
|
|
|
251
250
|
extensions: []
|
|
252
251
|
extra_rdoc_files: []
|
|
253
252
|
files:
|
|
254
|
-
- ".DS_Store"
|
|
255
253
|
- ".gitignore"
|
|
256
254
|
- ".rubocop.yml"
|
|
257
255
|
- ".ruby-gemset"
|
|
258
256
|
- ".ruby-version"
|
|
259
|
-
- ".travis.yml"
|
|
260
257
|
- CLAUDE.md
|
|
261
258
|
- CODE_OF_CONDUCT.md
|
|
262
259
|
- Gemfile
|
|
@@ -266,6 +263,17 @@ files:
|
|
|
266
263
|
- bin/console
|
|
267
264
|
- bin/run
|
|
268
265
|
- bin/setup
|
|
266
|
+
- docs/application.md
|
|
267
|
+
- docs/getting_started.md
|
|
268
|
+
- docs/iterators.md
|
|
269
|
+
- docs/language_objects.md
|
|
270
|
+
- docs/language_scripting.md
|
|
271
|
+
- docs/language_syntax.md
|
|
272
|
+
- docs/objects.md
|
|
273
|
+
- docs/operators.md
|
|
274
|
+
- docs/plugins.md
|
|
275
|
+
- docs/verbs.md
|
|
276
|
+
- docs/web_app.md
|
|
269
277
|
- exe/gloo
|
|
270
278
|
- exe/o
|
|
271
279
|
- gloo.gemspec
|
|
@@ -284,6 +292,7 @@ files:
|
|
|
284
292
|
- lib/gloo/app/running_app.rb
|
|
285
293
|
- lib/gloo/app/settings.rb
|
|
286
294
|
- lib/gloo/app/table.rb
|
|
295
|
+
- lib/gloo/app/theme.rb
|
|
287
296
|
- lib/gloo/convert/converter.rb
|
|
288
297
|
- lib/gloo/convert/falseclass_to_integer.rb
|
|
289
298
|
- lib/gloo/convert/nilclass_to_date.rb
|
|
@@ -305,6 +314,7 @@ files:
|
|
|
305
314
|
- lib/gloo/core/gloo_system.rb
|
|
306
315
|
- lib/gloo/core/heap.rb
|
|
307
316
|
- lib/gloo/core/here.rb
|
|
317
|
+
- lib/gloo/core/invoker.rb
|
|
308
318
|
- lib/gloo/core/it.rb
|
|
309
319
|
- lib/gloo/core/literal.rb
|
|
310
320
|
- lib/gloo/core/obj.rb
|
|
@@ -314,12 +324,16 @@ files:
|
|
|
314
324
|
- lib/gloo/core/pn.rb
|
|
315
325
|
- lib/gloo/core/tokens.rb
|
|
316
326
|
- lib/gloo/core/verb.rb
|
|
327
|
+
- lib/gloo/docs/doc_data.rb
|
|
328
|
+
- lib/gloo/docs/help_shell.rb
|
|
329
|
+
- lib/gloo/docs/markdown_renderer.rb
|
|
317
330
|
- lib/gloo/exec/action.rb
|
|
318
331
|
- lib/gloo/exec/dispatch.rb
|
|
319
332
|
- lib/gloo/exec/exec_env.rb
|
|
320
333
|
- lib/gloo/exec/runner.rb
|
|
321
334
|
- lib/gloo/exec/script.rb
|
|
322
335
|
- lib/gloo/exec/stack.rb
|
|
336
|
+
- lib/gloo/expr/call.rb
|
|
323
337
|
- lib/gloo/expr/expression.rb
|
|
324
338
|
- lib/gloo/expr/l_boolean.rb
|
|
325
339
|
- lib/gloo/expr/l_decimal.rb
|
|
@@ -379,6 +393,9 @@ files:
|
|
|
379
393
|
- lib/gloo/plugin/callback.rb
|
|
380
394
|
- lib/gloo/plugin/ext_manager.rb
|
|
381
395
|
- lib/gloo/plugin/lib_manager.rb
|
|
396
|
+
- lib/gloo/shell/command_node.rb
|
|
397
|
+
- lib/gloo/shell/context.rb
|
|
398
|
+
- lib/gloo/shell/runner.rb
|
|
382
399
|
- lib/gloo/verbs/break.rb
|
|
383
400
|
- lib/gloo/verbs/check.rb
|
|
384
401
|
- lib/gloo/verbs/cls.rb
|
|
@@ -448,11 +465,11 @@ files:
|
|
|
448
465
|
- test.gloo/verbs/run.test.gloo
|
|
449
466
|
- test.gloo/verbs/tell.test.gloo
|
|
450
467
|
- test.gloo/verbs/unless.test.gloo
|
|
451
|
-
homepage:
|
|
468
|
+
homepage: https://github.com/ecrane/gloo
|
|
452
469
|
licenses:
|
|
453
470
|
- MIT
|
|
454
|
-
metadata:
|
|
455
|
-
|
|
471
|
+
metadata:
|
|
472
|
+
documentation_uri: https://github.com/ecrane/gloo
|
|
456
473
|
rdoc_options: []
|
|
457
474
|
require_paths:
|
|
458
475
|
- lib
|
|
@@ -467,8 +484,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
467
484
|
- !ruby/object:Gem::Version
|
|
468
485
|
version: '0'
|
|
469
486
|
requirements: []
|
|
470
|
-
rubygems_version:
|
|
471
|
-
signing_key:
|
|
487
|
+
rubygems_version: 4.0.17
|
|
472
488
|
specification_version: 4
|
|
473
489
|
summary: Gloo scripting language. A scripting language built on ruby.
|
|
474
490
|
test_files: []
|
data/.DS_Store
DELETED
|
Binary file
|