calyx 0.10.0 → 0.10.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.
- checksums.yaml +4 -4
- data/README.md +2 -0
- data/lib/calyx/registry.rb +5 -4
- data/lib/calyx/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: ae6e35e886bac0c971b12dd3d747c35826776ae3
|
|
4
|
+
data.tar.gz: 4f7f9b30aef7828796e2ab19c0c5934a05fa0ae9
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 1a609ed4f575994d220a37601c20baf3a249aba52e972f65d1adfe5e929e7fb7a9732071b15ec352ceef1c4f8836dc38c377542280fbd22f758fd451b23d1d21
|
|
7
|
+
data.tar.gz: abddf4ce3d2917295f187ef07fb72919bd163bbd71e15fc372eda351aaa25fbc8e3ca085d45f581791c4120f452f50bb72a216939718d82ae1a84b443a010f8d
|
data/README.md
CHANGED
|
@@ -249,6 +249,8 @@ end
|
|
|
249
249
|
# => Jon <jon>
|
|
250
250
|
```
|
|
251
251
|
|
|
252
|
+
Note that the memoization symbol can only be used on the right hand side of a production rule.
|
|
253
|
+
|
|
252
254
|
### Dynamically Constructing Rules
|
|
253
255
|
|
|
254
256
|
Template expansions can be dynamically constructed at runtime by passing a context map of rules to the `#generate` method:
|
data/lib/calyx/registry.rb
CHANGED
|
@@ -26,8 +26,10 @@ module Calyx
|
|
|
26
26
|
def transform(name, value)
|
|
27
27
|
if value.respond_to?(name)
|
|
28
28
|
value.send(name)
|
|
29
|
-
|
|
29
|
+
elsif mappings.key?(name)
|
|
30
30
|
mappings[name].call(value)
|
|
31
|
+
else
|
|
32
|
+
value
|
|
31
33
|
end
|
|
32
34
|
end
|
|
33
35
|
|
|
@@ -74,9 +76,8 @@ module Calyx
|
|
|
74
76
|
|
|
75
77
|
def construct_mapping(pairs)
|
|
76
78
|
mapper = -> (input) {
|
|
77
|
-
pairs.
|
|
78
|
-
|
|
79
|
-
}
|
|
79
|
+
match, target = pairs.detect { |match, target| input =~ match }
|
|
80
|
+
input.gsub(match, target)
|
|
80
81
|
}
|
|
81
82
|
end
|
|
82
83
|
|
data/lib/calyx/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: calyx
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.10.
|
|
4
|
+
version: 0.10.2
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Mark Rickerby
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2016-05-
|
|
11
|
+
date: 2016-05-29 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: bundler
|