acdc 0.2.3 → 0.2.5

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 (3) hide show
  1. data/lib/acdc.rb +1 -1
  2. data/lib/acdc/body.rb +4 -7
  3. metadata +1 -1
@@ -9,7 +9,7 @@ require File.join(File.dirname(__FILE__),"acdc","body")
9
9
 
10
10
  module AcDc
11
11
 
12
- VERSION = [0,2,3] unless defined?(AcDc::VERSION)
12
+ VERSION = [0,2,5] unless defined?(AcDc::VERSION)
13
13
 
14
14
  if defined?(JAIL_BREAK)
15
15
  Element.class_eval{ alias :to_s :acdc }
@@ -37,7 +37,9 @@ module AcDc
37
37
  if type and type.ancestors.include?(Body)
38
38
  elements.update(key => type.new(val.to_hash.merge(:sequence => options_for(key)[:sequence])))
39
39
  elsif type
40
- elements.update(key => type.new(val, options_for(key)))
40
+ # if it's an Element we want the value (avoids recursive value)
41
+ value = (val.respond_to?(:value)) ? val.value : val
42
+ elements.update(key => type.new(value, options_for(key)))
41
43
  else
42
44
  elements.update(key => Element(val, options_for(key)))
43
45
  end
@@ -177,12 +179,7 @@ module AcDc
177
179
 
178
180
  def read(method_id)
179
181
  if elements.has_key?(method_id)
180
- obj = elements[method_id]
181
- if obj.is_a?(Body)
182
- elements[method_id]
183
- else
184
- elements[method_id].value
185
- end
182
+ elements[method_id]
186
183
  else
187
184
  attributes[method_id].value
188
185
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: acdc
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.3
4
+ version: 0.2.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Clint Hill