Sha256: bc7127f5b5d18619820602f096b579dfb1a6ee46c8b038802f0a87de580619e7
Contents?: true
Size: 903 Bytes
Versions: 8
Compression:
Stored size: 903 Bytes
Contents
# frozen_string_literal: true module Meta module JsonSchema class ValidationErrors < StandardError attr_reader :errors def initialize(errors, message = nil) raise ArgumentError, '参数 errors 应传递一个 Hash' unless errors.is_a?(Hash) super(message) @errors = errors end def prepend_root(root) errors_prepend_root = errors.transform_keys do |name| return name.to_s if root.empty? path = name[0] == '[' ? "#{root}#{name}" : "#{root}.#{name}" path = path[1..] if path[0] == '.' path = path[0..-2] if path[-1] == '.' path end ValidationErrors.new(errors_prepend_root) end end class ValidationError < ValidationErrors def initialize(message) super('' => message) end def message errors[''] end end end end
Version data entries
8 entries across 8 versions & 1 rubygems