Module: Ccp::Serializers
- Extended by:
- Serializers
- Includes:
- Enumerable
- Included in:
- Serializers
- Defined in:
- lib/ccp/serializers.rb,
lib/ccp/serializers/core.rb,
lib/ccp/serializers/json.rb,
lib/ccp/serializers/yaml.rb,
lib/ccp/serializers/msgpack.rb
Defined Under Namespace
Modules: Core, Json, Msgpack, Yaml
Constant Summary
collapse
- NotFound =
Class.new(RuntimeError)
- DICTIONARY =
cache for (extname -> Serializer)
{}
Instance Method Summary
collapse
Instance Method Details
#[](name) ⇒ Object
Also known as:
lookup
16
17
18
19
20
|
# File 'lib/ccp/serializers.rb', line 16
def [](name)
return name.must.coerced(Core, Symbol => :to_s, String => proc{|key| DICTIONARY[key]}) {
raise NotFound, "%s(%s) for %s" % [name, name.class, DICTIONARY.keys.inspect]
}
end
|
#[]=(key, val) ⇒ Object
22
23
24
|
# File 'lib/ccp/serializers.rb', line 22
def []=(key, val)
DICTIONARY[key.to_s] = val.must(Core)
end
|
#each(&block) ⇒ Object
12
13
14
|
# File 'lib/ccp/serializers.rb', line 12
def each(&block)
DICTIONARY.each_value(&block)
end
|