scheherazade 0.0.7 → 0.0.8

Sign up to get free protection for your applications and to get access to all the features.
@@ -134,12 +134,13 @@ module Scheherazade
134
134
  # Allows one to temporarily override the current characters while
135
135
  # the given block executes
136
136
  #
137
- def with(temp_current, &block)
138
- old = current.slice(*temp_current.keys)
139
- current.merge!(temp_current)
140
- instance_eval(&block)
137
+ def with(temp_current)
138
+ keys = temp_current.keys.map{|k| to_character(k)}
139
+ previous_values = current.values_at(*keys)
140
+ current.merge!(Hash[keys.zip(temp_current.values)])
141
+ yield
141
142
  ensure
142
- current.merge!(old)
143
+ current.merge!(Hash[keys.zip(previous_values)])
143
144
  end
144
145
 
145
146
  def fill(character_or_model, *with)
@@ -1,3 +1,3 @@
1
1
  module Scheherazade
2
- VERSION = "0.0.7"
2
+ VERSION = "0.0.8"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: scheherazade
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.7
4
+ version: 0.0.8
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-07-06 00:00:00.000000000 Z
12
+ date: 2012-07-09 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rails
@@ -91,7 +91,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
91
91
  version: '0'
92
92
  segments:
93
93
  - 0
94
- hash: -3896123621953869973
94
+ hash: -3938852756057065504
95
95
  required_rubygems_version: !ruby/object:Gem::Requirement
96
96
  none: false
97
97
  requirements:
@@ -100,7 +100,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
100
100
  version: '0'
101
101
  segments:
102
102
  - 0
103
- hash: -3896123621953869973
103
+ hash: -3938852756057065504
104
104
  requirements: []
105
105
  rubyforge_project:
106
106
  rubygems_version: 1.8.24