calyx 0.10.0 → 0.10.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: c30774b8a6567532e9ee613185e1f4505665e197
4
- data.tar.gz: fd92cdc99522713e076ae9161d855c18eb42058f
3
+ metadata.gz: ae6e35e886bac0c971b12dd3d747c35826776ae3
4
+ data.tar.gz: 4f7f9b30aef7828796e2ab19c0c5934a05fa0ae9
5
5
  SHA512:
6
- metadata.gz: de2c0e4685357546aeda4474c5b16be15c1461c517d4c1ca0210ce21a85e191eeb23be760ac7660a48518b764e4c12c88f8a8e61e5487440a6d5d40f848784e7
7
- data.tar.gz: 459fcb3685caeb784df815592ad1e0da37d82bbf29def422c27e90b90d7ccf9e8168115f6e484b6a99c835fa7106268b8c4171c10bd3f7af3bc194e1c7cc0798
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:
@@ -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
- else
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.each { |match,target|
78
- return input.gsub(match, target) if input =~ match
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
@@ -1,3 +1,3 @@
1
1
  module Calyx
2
- VERSION = '0.10.0'.freeze
2
+ VERSION = '0.10.2'.freeze
3
3
  end
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.0
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-19 00:00:00.000000000 Z
11
+ date: 2016-05-29 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler