Class Hashery::QueryHash
In: lib/hashery/query_hash.rb
Parent: CRUDHash

QueryHash is essentially a Hash class, but with some OpenStruct-like features.

    q = QueryHash.new

Entries can be added to the Hash via a setter method.

    q.a = 1

Then looked up via a query method.

    q.a?  #=> 1

The can also be looked up via a bang method.

    q.a!  #=> 1

The difference between query methods and bang methods is that the bang method will auto-instantiate the entry if not present, where as a query method will not.

A QueryHash might not be quite as elegant as an OpenHash in that reader methods must end in `?` or `!`, but it remains fully compatible with Hash regardless of it‘s settings.

Methods

Public Class methods

By default the `key_proc` is set to convert all keys to strings via `to_s`.

default - Default object, or default_proc - Default procedure.

Public Instance methods

Route get and set calls.

s - [Symbol] Name of method. a - [Array] Method arguments. b - [Proc] Block argument.

Examples

  o = QueryHash.new
  o.a = 1
  o.a?  #=> 1
  o.b?  #=> nil

Custom respond_to to account for method_missing.

name - The method name to check.

Returns `true` or `false`.

[Validate]