kaiseki 1.2.2 → 1.2.3

Sign up to get free protection for your applications and to get access to all the features.
data/lib/kaiseki.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  module Kaiseki
2
- VERSION = '1.2.2'
2
+ VERSION = '1.2.3'
3
3
  file_path = File.dirname __FILE__
4
4
 
5
5
  #load basic kaiseki classes
data/lib/parseable.rb CHANGED
@@ -7,7 +7,7 @@ module Kaiseki
7
7
  def parse stream, options = {}
8
8
  stream = stream.to_stream
9
9
  stream.lock do
10
- self.to_parseable.parse! stream, options
10
+ parse! stream, options
11
11
  end
12
12
  end
13
13
 
@@ -96,5 +96,10 @@ module Kaiseki
96
96
  def tag_error name
97
97
  ErrorTag.new self, name
98
98
  end
99
+
100
+ private
101
+ def parse! stream, options = {}
102
+ self.to_parseable.parse stream, options
103
+ end
99
104
  end
100
105
  end
metadata CHANGED
@@ -2,7 +2,7 @@
2
2
  name: kaiseki
3
3
  version: !ruby/object:Gem::Version
4
4
  prerelease:
5
- version: 1.2.2
5
+ version: 1.2.3
6
6
  platform: ruby
7
7
  authors:
8
8
  - William Hamilton-Levi
@@ -26,7 +26,6 @@ extra_rdoc_files: []
26
26
  files:
27
27
  - lib/result_merge.rb
28
28
  - lib/var_get.rb
29
- - lib/parseable.rb~
30
29
  - lib/parser_package.rb
31
30
  - lib/var_set.rb
32
31
  - lib/mod_object.rb
data/lib/parseable.rb~ DELETED
@@ -1,100 +0,0 @@
1
- module Kaiseki
2
- module Parseable
3
- def to_parseable
4
- self
5
- end
6
-
7
- def parse stream, options = {}
8
- stream = stream.to_parseable
9
- stream.lock do
10
- self.to_parseable.parse! stream, options
11
- end
12
- end
13
-
14
- def predicate?
15
- false
16
- end
17
-
18
- def protect &block
19
- catch :ParseSuccess do
20
- catch :SkipSuccess do
21
- block.call
22
- throw :ParseSuccess
23
- end
24
- raise RuntimeError, "#{self.to_s} must not catch a SkipSuccess"
25
- end
26
- end
27
-
28
- def & other
29
- SequenceParser.new self, other
30
- end
31
-
32
- def | other
33
- ChoiceParser.new self, other
34
- end
35
-
36
- def repeat min, max = nil
37
- RepeatParser.new self, min, max
38
- end
39
-
40
- def optional
41
- repeat 0, 1
42
- end
43
-
44
- def zero_or_more
45
- repeat 0
46
- end
47
-
48
- def one_or_more
49
- repeat 1
50
- end
51
-
52
- def and?
53
- AndPredicate.new self
54
- end
55
-
56
- def not!
57
- NotPredicate.new self
58
- end
59
-
60
- def skip
61
- SkipPredicate.new self
62
- end
63
-
64
- def override options
65
- OverrideResult.new self, options
66
- end
67
-
68
- def merge
69
- MergeResult.new self
70
- end
71
-
72
- def cast to_class
73
- CastResult.new self, to_class
74
- end
75
-
76
- def filter node = Node.default, &block
77
- FilterResult.new self, node, &block
78
- end
79
-
80
- def action node = Node.default, &block
81
- ActionResult.new self, node, &block
82
- end
83
-
84
- def validate validators
85
- ValidateResult.new self, validators
86
- end
87
-
88
- def set *vars
89
- SetVar.new self, *vars
90
- end
91
-
92
- def tag_result name
93
- ResultTag.new self, name
94
- end
95
-
96
- def tag_error name
97
- ErrorTag.new self, name
98
- end
99
- end
100
- end