Sha256: b13b45bf70bd475770f69a334390cc8e00ecae991209deb478c66ed76f53411f
Contents?: true
Size: 1.42 KB
Versions: 2
Compression:
Stored size: 1.42 KB
Contents
class StrongJSON module Types def object(fields = {}) Type::Object.new(fields) end def array(type = any) Type::Array.new(type) end def optional(type = any) Type::Optional.new(type) end def string StrongJSON::Type::Base.new(:string) end def numeric StrongJSON::Type::Base.new(:numeric) end def number StrongJSON::Type::Base.new(:number) end def boolean StrongJSON::Type::Base.new(:boolean) end def any StrongJSON::Type::Base.new(:any) end def any? optional(any) end def prohibited StrongJSON::Type::Base.new(:prohibited) end def symbol StrongJSON::Type::Base.new(:symbol) end def literal(value) StrongJSON::Type::Literal.new(value) end def enum(*types) StrongJSON::Type::Enum.new(types) end def string? optional(string) end def numeric? optional(numeric) end def number? optional(number) end def boolean? optional(boolean) end def symbol? optional(symbol) end def ignored StrongJSON::Type::Base.new(:ignored) end def array?(ty) optional(array(ty)) end def object?(fields) optional(object(fields)) end def literal?(value) optional(literal(value)) end def enum?(*types) optional(enum(*types)) end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
strong_json-0.7.1 | lib/strong_json/types.rb |
strong_json-0.7.0 | lib/strong_json/types.rb |