std_rules 0.0.6 → 0.0.7

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 (3) hide show
  1. data/lib/std_rules/version.rb +1 -1
  2. data/lib/std_rules.rb +13 -15
  3. metadata +2 -2
@@ -1,3 +1,3 @@
1
1
  module StdRules
2
- VERSION = "0.0.6"
2
+ VERSION = "0.0.7"
3
3
  end
data/lib/std_rules.rb CHANGED
@@ -15,23 +15,21 @@ module StdRules
15
15
  end
16
16
 
17
17
  def str_format
18
- str = @data_stack.pop
18
+ str = '#' + @data_stack.pop + "#"
19
+
20
+ a = str.split(/#%/)
21
+ params = []
22
+ (a.length - 1).times do
23
+ params << data_stack.pop
24
+ end
25
+ params.reverse!
26
+
19
27
  result = []
20
- str.reverse!
21
- p = 0
22
- while p < str.length do
23
- if str[p] == '%'
24
- if str[p+1] != '\\'
25
- result << @data_stack.pop.to_s
26
- else
27
- result << str[p]
28
- end
29
- else
30
- result << str[p] unless str[p-1] == '%' and str[p] == '\\'
31
- end
32
- p += 1
28
+ a.each_index do |i|
29
+ result << a[i]
30
+ result << params[i] if i < params.length
33
31
  end
34
- @data_stack.push result.reverse.join
32
+ @data_stack.push result.join[1..-2]
35
33
  end
36
34
 
37
35
  def destroy
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: std_rules
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.6
4
+ version: 0.0.7
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-11-13 00:00:00.000000000 Z
12
+ date: 2012-11-14 00:00:00.000000000 Z
13
13
  dependencies: []
14
14
  description: Standart library for rules program language
15
15
  email: