kaiseki 1.2.2 → 1.2.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.
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