opsa 0.0.2 → 0.0.3
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/bin/opsa +3 -3
- data/lib/opsa.rb +1 -1
- data/lib/opsa/language.rb +14 -10
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7361eb664ff2b4d973086bb7b7636a2aabf09b3e
|
4
|
+
data.tar.gz: ae524369a000a7c47425e22b38f202f6cdf59671
|
5
5
|
!binary "U0hBNTEy":
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: bfd6456dcd07d1446c2cc8c261e1413000ebab784941ee43a4afaab17cb1c87c6d3fc081bfab62b361d71f45a0072cc7d9604a6f5abbaab32c20816967f74967
|
7
|
+
data.tar.gz: 23a238e0953b1136f913a5265a07626ae57a05d802c7fe3cf6f76106965e9aff8584f9599f16d114a750736796e71679f631cae8a25eb907aa0579b66aafed01
|
data/bin/opsa
CHANGED
@@ -5,14 +5,14 @@ require 'opsa'
|
|
5
5
|
lang = OPSA::Language.new
|
6
6
|
|
7
7
|
lang.respond_to Regexp.new('^say_hello (.+)') do |match|
|
8
|
-
|
8
|
+
"> Hello, #{match}!"
|
9
9
|
end
|
10
10
|
lang.respond_to Regexp.new('^echo (.+)') do |match|
|
11
|
-
|
11
|
+
"> #{match}"
|
12
12
|
end
|
13
13
|
|
14
14
|
robot = OPSA.new(:language => lang)
|
15
15
|
|
16
16
|
while line = gets and line.strip!
|
17
|
-
robot.r(line)
|
17
|
+
puts robot.r(line)
|
18
18
|
end
|
data/lib/opsa.rb
CHANGED
data/lib/opsa/language.rb
CHANGED
@@ -25,14 +25,15 @@ class OPSA::Language
|
|
25
25
|
if _match = text.match(regex)
|
26
26
|
args = _match.captures
|
27
27
|
if args.size > 0
|
28
|
-
action.call(*args)
|
28
|
+
return action.call(*args)
|
29
29
|
else
|
30
|
-
action.call(text)
|
30
|
+
return action.call(text)
|
31
31
|
end
|
32
32
|
else
|
33
33
|
next
|
34
34
|
end
|
35
35
|
end
|
36
|
+
return nil
|
36
37
|
end
|
37
38
|
end
|
38
39
|
|
@@ -40,22 +41,25 @@ if __FILE__ == $0
|
|
40
41
|
lang = OPSA::Language.new
|
41
42
|
|
42
43
|
lang.respond_to Regexp.new('^say_hello (.+)') do |match|
|
43
|
-
|
44
|
+
"Hello, #{match}!"
|
44
45
|
end
|
45
46
|
lang.respond_to Regexp.new('^echo:(.+)') do |match|
|
46
|
-
|
47
|
+
"> #{match}"
|
47
48
|
end
|
49
|
+
lang.respond_to Regexp.new('^(.+)') do |match|
|
50
|
+
"# #{match}"
|
51
|
+
end
|
52
|
+
|
53
|
+
puts lang.input("say_hello girl")
|
54
|
+
puts lang.input("say_hello world")
|
55
|
+
puts lang.input("say_hello beautifull sunshine")
|
56
|
+
puts lang.input("echo:hello")
|
57
|
+
puts lang.input("echo:world")
|
48
58
|
|
49
59
|
counter = 0
|
50
60
|
lang.respond_to Regexp.new('^incr$') do |text|
|
51
61
|
counter += 1
|
52
62
|
end
|
53
|
-
|
54
|
-
lang.input("say_hello world")
|
55
|
-
lang.input("say_hello beautifull sunshine")
|
56
|
-
lang.input("echo:hello")
|
57
|
-
lang.input("echo:world")
|
58
|
-
|
59
63
|
lang.input("incr")
|
60
64
|
puts counter
|
61
65
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: opsa
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Liu Lantao
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-01-
|
11
|
+
date: 2014-01-16 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: A simple systems operation robot
|
14
14
|
email: liulantao@gmail.com
|