nested 0.0.16 → 0.0.17

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.
Files changed (4) hide show
  1. checksums.yaml +4 -4
  2. data/lib/nested.rb +9 -1
  3. data/nested.gemspec +1 -1
  4. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: e094093ea980a578d78107c00f909441725de662
4
- data.tar.gz: 4313216ddde4c3e9a20b4bea403e28a62d6755c8
3
+ metadata.gz: e59bb33223f6b09ae1e78f0af958533f430ff90c
4
+ data.tar.gz: 9fedc4f9b0557ffe08afa28c40262499c01cf65a
5
5
  SHA512:
6
- metadata.gz: c424d4769683d24f933508a2974d410871dca9325d05d3dba0471c551d30de68c8b914402d638e7f555d22e13aa3a74a86fe339b659aede851999fe51cb6db05
7
- data.tar.gz: 41e439448d8985bc7e70d5cf905b8d4ceafe6730c86e2e9dea9e23317ee24613f2830d505d2bcaf53ac66ba16222764bc0b9740f76d3498e1a4cdbae5af1df6a
6
+ metadata.gz: 25a5e634ad799ece06b774dac6fb596e784b1e0efa367aeae6e3b8901b979239b000b94a41d40ca572fcc5613471de2de7f8e1dc2ca557509518cb6030ee0d8b
7
+ data.tar.gz: dccf00f2fa6b24baa29f48cd36a597020604f16c3b73aaabb3c66330d54bd4a222dcae16e117d10097c6197580cef02b09a3764d2d92aa784af8fa286ff0d5cb
data/lib/nested.rb CHANGED
@@ -55,7 +55,8 @@ module Nested
55
55
  fetched = instance_exec(&(init_block||FETCH))
56
56
 
57
57
  # puts "set @#{@__resource.instance_variable_name} to #{fetched.inspect} for #{self}"
58
- self.instance_variable_set("@#{@__resource.instance_variable_name}", fetched)
58
+ # self.instance_variable_set("@#{@__resource.instance_variable_name}", fetched)
59
+ @__resource.sinatra_set_instance_variable(self, @__resource.instance_variable_name, fetched)
59
60
  end
60
61
 
61
62
  if member?
@@ -180,6 +181,11 @@ module Nested
180
181
 
181
182
  # --------------------------
182
183
 
184
+ def sinatra_set_instance_variable(sinatra, name, value)
185
+ raise "variable @#{name} already defined" if sinatra.instance_variable_defined?(:"@#{name}")
186
+ sinatra.instance_variable_set(:"@#{name}", value)
187
+ end
188
+
183
189
  def sinatra_init(sinatra)
184
190
  sinatra.instance_variable_set("@__resource", self)
185
191
  sinatra.instance_exec(&@__init)
@@ -218,6 +224,8 @@ module Nested
218
224
  sinatra_init_data(:post, sinatra, &block)
219
225
  res = sinatra.instance_exec(*sinatra.instance_variable_get("@__data"), &block)
220
226
  sinatra.instance_variable_set("@#{self.instance_variable_name}", res)
227
+ # TODO: do we need to check for existing variables here?
228
+ # sinatra_set_instance_variable(sinatra, self.instance_variable_name, res)
221
229
  end
222
230
 
223
231
  def sinatra_response_type(response)
data/nested.gemspec CHANGED
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = "nested"
3
- s.version = "0.0.16"
3
+ s.version = "0.0.17"
4
4
 
5
5
  s.authors = ["Jan Zimmek"]
6
6
  s.email = %q{jan.zimmek@web.de}
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: nested
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.16
4
+ version: 0.0.17
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jan Zimmek
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-11-25 00:00:00.000000000 Z
11
+ date: 2013-11-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport