instance method
fold_array
Ruby on Rails 2.2.3
Since v2.2.3 Last seen in v2.2.3 PrivateSignature
fold_array(array)
Folds an Array to a Hash, if possible. Folding happens according to the content of keyattr, which has to be an array.
- array
-
Array to be folded.
Parameters
-
arrayreq
Source
# File activesupport/lib/active_support/vendor/xml-simple-1.0.11/xmlsimple.rb, line 568
def fold_array(array)
hash = Hash.new
array.each { |x|
return array unless x.instance_of?(Hash)
key_matched = false
@options['keyattr'].each { |key|
if x.has_key?(key)
key_matched = true
value = x[key]
return array if value.instance_of?(Hash) || value.instance_of?(Array)
value = normalise_space(value) if @options['normalisespace'] == 1
x.delete(key)
hash[value] = x
break
end
}
return array unless key_matched
}
hash = collapse_content(hash) if @options['collapseagain']
hash
end
Defined in activesupport/lib/active_support/vendor/xml-simple-1.0.11/xmlsimple.rb line 568
· View on GitHub
· Improve this page
· Find usages on GitHub
Defined in XmlSimple