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.
By default the `key_proc` is set to convert all keys to strings via `to_s`.
default - Default object, or default_proc - Default procedure.
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`.