Sha256: 18495f2b03f03fd14f13c91a1c48663407e3f602b27386887313979cbc41ea59
Contents?: true
Size: 908 Bytes
Versions: 11
Compression:
Stored size: 908 Bytes
Contents
module Lurker module Json class Parser class PlainStrategy include Lurker::Json::Parser::Expertise attr_reader :schema_options def initialize(options) @schema_options = options.dup end def parse(payload) case payload when Lurker::Json::Schema payload when Hash return parse_as_typed(payload) if type_defined?(payload) || type_supposed?(payload) Lurker::Json::Schema.new(payload, schema_options) when Array payload.map do |schema| Lurker::Json::Parser.plain(schema_options).parse(schema) end else payload end end private def parse_as_typed(payload) Lurker::Json::Parser.typed(schema_options).parse(payload) end end end end end
Version data entries
11 entries across 11 versions & 1 rubygems