class Hash

Extensions for Ruby's `Hash` class.

Public Instance Methods

deep_dup() click to toggle source

Deep duplicate

# File lib/sparql/algebra/extensions.rb, line 239
def deep_dup
  inject({}) {|memo, (k, v)| memo.merge(k => v.deep_dup)}
end
optimize(**options) click to toggle source

A duplicate of this hash.

@return [Hash] a copy of `self` @see SPARQL::Algebra::Expression#optimize

# File lib/sparql/algebra/extensions.rb, line 233
def optimize(**options)
  self.deep_dup
end
to_sxp() click to toggle source
# File lib/sparql/algebra/extensions.rb, line 226
def to_sxp; to_sxp_bin; end
to_sxp_bin() click to toggle source

Returns the SXP representation of this object, defaults to `self`.

@return [String]

# File lib/sparql/algebra/extensions.rb, line 223
def to_sxp_bin
  to_a.to_sxp_bin
end