Sha256: a826ffa6c676b0a47b1797ca63c489c1f6e929b8b1997d8f6b35e97f5ea0aebe
Contents?: true
Size: 1.52 KB
Versions: 3
Compression:
Stored size: 1.52 KB
Contents
class Array def to_params join('&').to_params end end class Class def inherited_property(accessor, default = nil) instance_eval <<-RUBY, __FILE__, __LINE__ + 1 @#{accessor} = default def set_#{accessor}(value) @#{accessor} = value end alias #{accessor} set_#{accessor} def get_#{accessor} return @#{accessor} if instance_variable_defined?(:@#{accessor}) superclass.send(:#{accessor}) end RUBY # @path = default # # def set_path(value) # @path = value # end # alias_method path, set_path # def get_path # return @path if instance_variable_defined?(:path) # superclass.send(:path) # end end def inherited_accessor(accessor, default = nil) instance_eval <<-RUBY, __FILE__, __LINE__ + 1 class << self; attr_writer :#{accessor}; end @#{accessor} = default def #{accessor} return @#{accessor} if instance_variable_defined?(:@#{accessor}) superclass.send(:#{accessor}) end RUBY end end class Hash def to_params map { |k, v| if v.instance_of?(Hash) v.map { |sk, sv| "#{k}[#{sk}]=#{sv}" }.join('&') else "#{k}=#{v}" end }.join('&').to_params end def symbolize_keys inject({}) do |options, (key, value)| options[(key.to_sym rescue key) || key] = value options end end end class NilClass def to_params '' end end class String def to_params Endeca.escape(self) end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
primedia-endeca-0.9.19 | lib/core_ext.rb |
primedia-endeca-0.9.20 | lib/core_ext.rb |
primedia-endeca-0.9.21 | lib/core_ext.rb |