gloo 1.0.0 → 1.2.2

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.
Files changed (87) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +2 -1
  3. data/.ruby-gemset +1 -0
  4. data/.ruby-version +1 -0
  5. data/gloo.gemspec +7 -4
  6. data/lib/VERSION +1 -1
  7. data/lib/gloo/objs/data/mysql.rb +192 -0
  8. data/lib/gloo/objs/data/sqlite.rb +159 -0
  9. data/lib/gloo/verbs/help.rb +82 -0
  10. data/lib/gloo/verbs/version.rb +37 -0
  11. metadata +52 -82
  12. data/Gemfile.lock +0 -175
  13. data/lib/gloo/help/app/application.txt +0 -22
  14. data/lib/gloo/help/app/configuration.txt +0 -7
  15. data/lib/gloo/help/app/default_help.txt +0 -14
  16. data/lib/gloo/help/app/logging.txt +0 -16
  17. data/lib/gloo/help/core/color.txt +0 -31
  18. data/lib/gloo/help/core/error.txt +0 -33
  19. data/lib/gloo/help/core/events.txt +0 -21
  20. data/lib/gloo/help/core/gloo_system.txt +0 -57
  21. data/lib/gloo/help/core/here.txt +0 -30
  22. data/lib/gloo/help/core/it.txt +0 -23
  23. data/lib/gloo/help/core/ops.txt +0 -16
  24. data/lib/gloo/help/core/pathname.txt +0 -29
  25. data/lib/gloo/help/objs/basic/alias.txt +0 -36
  26. data/lib/gloo/help/objs/basic/boolean.txt +0 -28
  27. data/lib/gloo/help/objs/basic/container.txt +0 -33
  28. data/lib/gloo/help/objs/basic/decimal.txt +0 -28
  29. data/lib/gloo/help/objs/basic/integer.txt +0 -27
  30. data/lib/gloo/help/objs/basic/script.txt +0 -29
  31. data/lib/gloo/help/objs/basic/string.txt +0 -28
  32. data/lib/gloo/help/objs/basic/text.txt +0 -27
  33. data/lib/gloo/help/objs/basic/untyped.txt +0 -22
  34. data/lib/gloo/help/objs/cli/banner.txt +0 -49
  35. data/lib/gloo/help/objs/cli/bar.txt +0 -37
  36. data/lib/gloo/help/objs/cli/colorize.txt +0 -33
  37. data/lib/gloo/help/objs/cli/confirm.txt +0 -26
  38. data/lib/gloo/help/objs/cli/menu.txt +0 -44
  39. data/lib/gloo/help/objs/cli/menu_item.txt +0 -26
  40. data/lib/gloo/help/objs/cli/pastel.txt +0 -43
  41. data/lib/gloo/help/objs/cli/prompt.txt +0 -27
  42. data/lib/gloo/help/objs/cli/select.txt +0 -34
  43. data/lib/gloo/help/objs/ctrl/each.txt +0 -48
  44. data/lib/gloo/help/objs/ctrl/repeat.txt +0 -38
  45. data/lib/gloo/help/objs/data/markdown.txt +0 -25
  46. data/lib/gloo/help/objs/data/mysql.txt +0 -40
  47. data/lib/gloo/help/objs/data/query.txt +0 -37
  48. data/lib/gloo/help/objs/data/sqlite.txt +0 -26
  49. data/lib/gloo/help/objs/data/table.txt +0 -46
  50. data/lib/gloo/help/objs/dev/git_repo.txt +0 -36
  51. data/lib/gloo/help/objs/dev/stats.txt +0 -36
  52. data/lib/gloo/help/objs/dt/date.txt +0 -23
  53. data/lib/gloo/help/objs/dt/datetime.txt +0 -24
  54. data/lib/gloo/help/objs/dt/time.txt +0 -23
  55. data/lib/gloo/help/objs/ror/erb.txt +0 -37
  56. data/lib/gloo/help/objs/ror/eval.txt +0 -24
  57. data/lib/gloo/help/objs/snd/play.txt +0 -23
  58. data/lib/gloo/help/objs/snd/say.txt +0 -28
  59. data/lib/gloo/help/objs/system/file.txt +0 -48
  60. data/lib/gloo/help/objs/system/ssh_exec.txt +0 -30
  61. data/lib/gloo/help/objs/system/system.txt +0 -32
  62. data/lib/gloo/help/objs/web/http_get.txt +0 -35
  63. data/lib/gloo/help/objs/web/http_post.txt +0 -34
  64. data/lib/gloo/help/objs/web/json.txt +0 -34
  65. data/lib/gloo/help/objs/web/slack.txt +0 -33
  66. data/lib/gloo/help/objs/web/teams.txt +0 -30
  67. data/lib/gloo/help/objs/web/uri.txt +0 -38
  68. data/lib/gloo/help/verbs/alert.txt +0 -33
  69. data/lib/gloo/help/verbs/beep.txt +0 -25
  70. data/lib/gloo/help/verbs/cls.txt +0 -24
  71. data/lib/gloo/help/verbs/context.txt +0 -43
  72. data/lib/gloo/help/verbs/create.txt +0 -33
  73. data/lib/gloo/help/verbs/execute.txt +0 -27
  74. data/lib/gloo/help/verbs/help.txt +0 -34
  75. data/lib/gloo/help/verbs/if.txt +0 -37
  76. data/lib/gloo/help/verbs/list.txt +0 -34
  77. data/lib/gloo/help/verbs/load.txt +0 -38
  78. data/lib/gloo/help/verbs/move.txt +0 -42
  79. data/lib/gloo/help/verbs/put.txt +0 -38
  80. data/lib/gloo/help/verbs/quit.txt +0 -25
  81. data/lib/gloo/help/verbs/run.txt +0 -41
  82. data/lib/gloo/help/verbs/save.txt +0 -26
  83. data/lib/gloo/help/verbs/show.txt +0 -30
  84. data/lib/gloo/help/verbs/tell.txt +0 -34
  85. data/lib/gloo/help/verbs/unless.txt +0 -38
  86. data/lib/gloo/help/verbs/version.txt +0 -32
  87. data/lib/gloo/help/verbs/wait.txt +0 -29
@@ -1,30 +0,0 @@
1
- TEAMS OBJECT TYPE
2
- NAME: teams
3
- SHORTCUT: team
4
-
5
- DESCRIPTION
6
- Send message to channel in Teams.
7
-
8
- CHILDREN
9
- uri - string - 'https://outlook.office.com/webhook/...'
10
- The URI with access to the Teams channel.
11
- title - string
12
- Message title; header.
13
- color - string - '008000'
14
- Color theme for the message.
15
- message - string
16
- The message to post in Teams.
17
-
18
- MESSAGES
19
- run - Post the message to Teams.
20
-
21
- EXAMPLE
22
-
23
- team [teams] :
24
- uri [string] : https://outlook.office.com/webhook/MYTOKEN/IncomingWebhook/MYTOKEN
25
- title [string] : Success
26
- color [string] : 008000
27
- message [string] : This worked!
28
-
29
- SEE ALSO
30
- http_get, http_post, json, uri
@@ -1,38 +0,0 @@
1
- URI OBJECT TYPE
2
- NAME: uri
3
- SHORTCUT: url
4
-
5
- DESCRIPTION
6
- A URI or URL.
7
-
8
- CHILDREN
9
- None
10
-
11
- MESSAGES
12
- open - open the URL in the default browser
13
- get_scheme - get the URI scheme; example: http
14
- get_host - get the URI host; example: google.com
15
- get_path - get the URI resource path; example: /post
16
- get_query - get the URI query parameters; example: id=121
17
- get_fragment - get the URI fragment
18
- get_cert_expires - get the web site's certificate expiration date
19
-
20
- EXAMPLE
21
-
22
- url [can] :
23
- on_load [script] :
24
- tell url.u to get_scheme
25
- show "scheme: " + it
26
-
27
- tell url.u to get_host
28
- show "host: " + it
29
-
30
- tell url.u to get_path
31
- show "path: " + it
32
-
33
- show "opening URL: " + url.u
34
- tell url.u to open
35
- u [uri] : https://my.url/path/1234
36
-
37
- SEE ALSO
38
- http_get, http_post, json
@@ -1,33 +0,0 @@
1
- ALERT VERB
2
- NAME: alert
3
- SHORTCUT: !
4
-
5
- DESCRIPTION
6
- Show a pop-up notification.
7
- This has only been implemented for the Mac OS X as of yet.
8
-
9
- SYNTAX
10
- alert <messsage>
11
-
12
- PARAMETERS
13
- messsage - The message that will be displayed in the alert.
14
-
15
- RESULT
16
- On the Mac, a notification will popup on screen.
17
- <it> will be set to the message.
18
-
19
- ERRORS
20
- Missing Expression!
21
- - No expression is provided as parameter to the verb.
22
- Expression evaluated with no result!
23
- - Expression is provided but evaluates to nil.
24
-
25
- EXAMPLE
26
-
27
- > create s as string : "boo"
28
- > alert s
29
-
30
- > alert "important message!"
31
-
32
- SEE ALSO
33
- show
@@ -1,25 +0,0 @@
1
- BEEP VERB
2
- NAME: beep
3
- SHORTCUT: b
4
-
5
- DESCRIPTION
6
- Play a standard system beep sound.
7
-
8
- SYNTAX
9
- beep
10
-
11
- PARAMETERS
12
- None
13
-
14
- RESULT
15
- None
16
-
17
- ERRORS
18
- None
19
-
20
- EXAMPLE
21
-
22
- > beep
23
-
24
- SEE ALSO
25
- play, say
@@ -1,24 +0,0 @@
1
- CLS VERB
2
- NAME: cls
3
- SHORTCUT: cls
4
-
5
- DESCRIPTION
6
- Clear the console screen.
7
-
8
- SYNTAX
9
- cls
10
-
11
- PARAMETERS
12
- None
13
-
14
- RESULT
15
- The screen is cleared and cursor set to the top.
16
-
17
- ERRORS
18
- None
19
-
20
- EXAMPLE
21
-
22
- > cls
23
-
24
- SEE ALSO
@@ -1,43 +0,0 @@
1
- CONTEXT VERB
2
- NAME: context
3
- SHORTCUT: @
4
-
5
- DESCRIPTION
6
- Get or set the current context.
7
- When no parameter is provided, the context will be shown.
8
- The the optional path parameter is provided, the context will
9
- be set to that path.
10
- Use 'context root' to set the context back to the root level.
11
-
12
- SYNTAX
13
- context <path.to.new.context>
14
-
15
- PARAMETERS
16
- path.to.new.context - Optional. The path to the new context.
17
-
18
- RESULT
19
- Context is optionally set.
20
- <it> will be set to the new context path when we are changing context.
21
- Context is show in either case.
22
-
23
- ERRORS
24
- None
25
-
26
- Note that providing a context does not exist will not initially
27
- be a problem. In other words, you can set the context to an
28
- object before it exists. However use of context that doesn't exist
29
- will be a problem.
30
-
31
- EXAMPLE
32
-
33
- > context
34
- Context: root
35
-
36
- > context my.object.path
37
- Context: my.object.path
38
-
39
- > context root
40
- Context: root
41
-
42
- SEE ALSO
43
- list
@@ -1,33 +0,0 @@
1
- CREATE VERB
2
- NAME: create
3
- SHORTCUT: `
4
-
5
- DESCRIPTION
6
- Create a new object of given type with given value.
7
- Both type and value are optional when creating an object.
8
-
9
- SYNTAX
10
- create <new.object.path> as <type> : <value>
11
-
12
- PARAMETERS
13
- new.object.path - The path and name of the new object
14
- type - The type of the new object
15
- value - The initial value for the new object
16
-
17
- RESULT
18
- The new object will be created and added to the object heap.
19
- <it> will be set to the new object's initial value.
20
-
21
- ERRORS
22
- Object name is missing!
23
- - The name of the object was not specified and the object
24
- cannot be created.
25
-
26
- EXAMPLE
27
-
28
- > create x as integer : 1
29
- > create s : "abc"
30
- > create t
31
-
32
- SEE ALSO
33
- objects
@@ -1,27 +0,0 @@
1
- EXECUTE VERB
2
- NAME: execute
3
- SHORTCUT: exec
4
-
5
- DESCRIPTION
6
- Execute a shell command.
7
-
8
- SYNTAX
9
- exec <expression>
10
-
11
- PARAMETERS
12
- expression
13
- - Evaluate the expression and execute in the shell.
14
-
15
- RESULT
16
- none
17
-
18
- ERRORS
19
- Missing Expression!
20
- - No expression is provided as parameter to the verb.
21
-
22
- EXAMPLE
23
-
24
- > exec 'rake test'
25
-
26
- SEE ALSO
27
- system, eval, erb
@@ -1,34 +0,0 @@
1
- HELP VERB
2
- NAME: help
3
- SHORTCUT: ?
4
-
5
- DESCRIPTION
6
- Show information about the application.
7
- The help command can also be used to show a list of objects,
8
- verbs, or to show detail about a single object or a
9
- single verb.
10
-
11
- SYNTAX
12
- help <topic>
13
-
14
- PARAMETERS
15
- about - Optional parameter.
16
- If no parameter is given, shows the default help screen
17
- keywords - List all keywords
18
- verbs - List available verbs
19
- objects - List available objects
20
- settings - List application settings
21
- topics - List all help topics
22
- <verb> - Look up detail about a verb
23
- <object> - Look up detail about an object
24
-
25
- RESULT
26
- The help screen will be shown with relevant information.
27
-
28
- ERRORS
29
- Help command could not be found
30
- - Trying to access a help topic that does not exist will result
31
- in an error.
32
-
33
- SEE ALSO
34
- application
@@ -1,37 +0,0 @@
1
- IF VERB
2
- NAME: if
3
- SHORTCUT: if
4
-
5
- DESCRIPTION
6
- If an expression is true then do something.
7
-
8
- SYNTAX
9
- if <true> then <do>
10
-
11
- PARAMETERS
12
- true - Does the expression evaluate to true?
13
- do - Execute command if the expression is true.
14
-
15
- RESULT
16
- Unchanged if the expression is not true.
17
- If true, then the result will be based on the command
18
- specified after the 'then' keyword.
19
-
20
- ERRORS
21
- Missing Expression!
22
- - No expression is provided as parameter to the verb.
23
-
24
- Other errors depend on the command that is run.
25
-
26
- EXAMPLE
27
-
28
- if [container] :
29
- x [bool] : false
30
- true_msg [string] : It is true!
31
- on_load [script] :
32
- if if.x then show "first time: " + if.true_msg
33
- put true into if.x
34
- if if.x then show "second time: " + if.true_msg
35
-
36
- SEE ALSO
37
- unless
@@ -1,34 +0,0 @@
1
- LIST VERB
2
- NAME: list
3
- SHORTCUT: .
4
-
5
- DESCRIPTION
6
- List out objects (and children) at the current context.
7
- When a path is provided, it will be listed instead of the
8
- current context.
9
-
10
- When using context, the current context will be shown, but
11
- when context has not been set, the root will be shown.
12
-
13
- SYNTAX
14
- list <path.to.object>
15
-
16
- PARAMETERS
17
- path.to.object - Optional path to object that will be listed.
18
- When no path is provided, the current context is used.
19
-
20
- RESULT
21
- Object and children are listed out in the CLI.
22
-
23
- ERRORS
24
- Object does not exist
25
- - The object specified that is to be listed could not be found.
26
-
27
- EXAMPLE
28
-
29
- > list
30
- > list my.container
31
- > list root
32
-
33
- SEE ALSO
34
- context
@@ -1,38 +0,0 @@
1
- LOAD VERB
2
- NAME: load
3
- SHORTCUT: <
4
-
5
- DESCRIPTION
6
- Load an object file.
7
- There are two ways to specify the file. Give either the full path
8
- and file name or use a relative path from the gloo project folder.
9
- For the latter, the extension is not needed. For the former, the
10
- file extension is necessary.
11
-
12
- Using * instead of a file name will load all gloo files in the folder.
13
-
14
- SYNTAX
15
- load <file_name>
16
-
17
- PARAMETERS
18
- file_name - Name of the object file that is to be loaded.
19
-
20
- RESULT
21
- Objects are loaded into the heap.
22
- on_load scripts are run within the loaded objects.
23
-
24
- ERRORS
25
- Missing Expression!
26
- - No expression is provided as parameter to the verb.
27
-
28
- If the file specified can't be found or can't be loaded,
29
- an error condition will result.
30
-
31
- EXAMPLE
32
-
33
- > load my/project/file
34
- > load my/app/*
35
- > load ~/.my_app/settings.gloo
36
-
37
- SEE ALSO
38
- save
@@ -1,42 +0,0 @@
1
- MOVE VERB
2
- NAME: move
3
- SHORTCUT: mv
4
-
5
- DESCRIPTION
6
- Move an object to a new parent.
7
-
8
- SYNTAX
9
- move <path.to.object> to <new.parent>
10
-
11
- PARAMETERS
12
- path.to.object - The object that we want to move.
13
- new.parent - The new location for the object.
14
-
15
- RESULT
16
- The object will now be in the new location.
17
-
18
- ERRORS
19
- Object to move was not specified
20
- - The <path.to.object> is not specified.
21
-
22
- Could not find object to move
23
- - The <path.to.object> cannot be resolved.
24
-
25
- Move' must include 'to' parent object
26
- - The 'to' keyword is missing.
27
- - The <new.parent> is not specified.
28
-
29
- Could not resolve target
30
- - The <new.parent> cannot be resolved.
31
-
32
- EXAMPLE
33
-
34
- can [can] :
35
- two [string] : def
36
- data [can] :
37
- one [string] : abc
38
- on_load [script] :
39
- move can.two to can.data
40
-
41
- SEE ALSO
42
- create
@@ -1,38 +0,0 @@
1
- PUT VERB
2
- NAME: put
3
- SHORTCUT: p
4
-
5
- DESCRIPTION
6
- Put a value into an object.
7
- The value is the result of an expression.
8
-
9
- SYNTAX
10
- put <expression> into <dst.path>
11
-
12
- PARAMETERS
13
- expression - The expression that is evaluated.
14
- dst.path - The path to the destination object.
15
-
16
- RESULT
17
- <it> will contain the result of the evaluation.
18
-
19
- ERRORS
20
- Missing Expression
21
- - The 'into' keyword is missing.
22
- - No source expression is provided.
23
-
24
- Target (into) missing
25
- - The destination is not specified.
26
-
27
- Target could not be resolved
28
- - The destination of the put cannot be resolved.
29
-
30
- EXAMPLE
31
-
32
- > put 'one' into str
33
- > put "two" into str
34
- > put 123 into x
35
- > put 3 + 5 into x
36
- > put TRUE into flag
37
-
38
- SEE ALSO
@@ -1,25 +0,0 @@
1
- QUIT VERB
2
- NAME: quit
3
- SHORTCUT: q
4
-
5
- DESCRIPTION
6
- Stop running the gloo application.
7
- Cleanup and shutdown.
8
-
9
- SYNTAX
10
- quit
11
-
12
- PARAMETERS
13
- None
14
-
15
- RESULT
16
- None
17
-
18
- ERRORS
19
- None
20
-
21
- EXAMPLE
22
-
23
- > quit
24
-
25
- SEE ALSO
@@ -1,41 +0,0 @@
1
- RUN VERB
2
- NAME: run
3
- SHORTCUT: r
4
-
5
- DESCRIPTION
6
- Run a script or other object.
7
- This is the same as sending a 'run' message to the object.
8
-
9
- SYNTAX
10
- run <path.to.object>
11
- run ~> <expression>
12
-
13
- PARAMETERS
14
- path.to.object
15
- - Reference to the object which will be run.
16
- - The object must be a runnable object such as a script.
17
-
18
- expression
19
- - Evaluate the expression and run it.
20
-
21
-
22
- RESULT
23
- The result depends on the object that is run.
24
-
25
- ERRORS
26
- Missing Expression!
27
- - No expression is provided as parameter to the verb.
28
-
29
- EXAMPLE
30
-
31
- > run my.script
32
-
33
- > create s as script : "show 3 + 4"
34
- > run s
35
-
36
- Run a script in an evaluated expression:
37
- > create s as string : "show 3 + 4"
38
- > run ~> s
39
-
40
- SEE ALSO
41
- tell
@@ -1,26 +0,0 @@
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
@@ -1,30 +0,0 @@
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
@@ -1,34 +0,0 @@
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
@@ -1,38 +0,0 @@
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