Sha256: 63e0b81452e990bdc66b36bea6913613ba09b1e94c12e1613876a6af81698513

Contents?: true

Size: 884 Bytes

Versions: 40

Compression:

Stored size: 884 Bytes

Contents

module Schemacop
  class BaseSchema
    attr_reader :root

    # Query data validity
    #
    # @param data The data to validate.
    # @return [Boolean] True if the data is valid, false otherwise.
    def valid?(data)
      validate(data).valid?
    end

    # Query data validity
    #
    # @param data The data to validate.
    # @return [Boolean] True if data is invalid, false otherwise.
    def invalid?(data)
      !valid?(data)
    end

    # Validate data for the defined Schema
    #
    # @param data The data to validate.
    # @raise [Schemacop::Exceptions::ValidationError] If the data is invalid,
    #   this exception is thrown.
    # @return The processed data
    def validate!(data)
      result = validate(data)

      unless result.valid?
        fail Exceptions::ValidationError, result.exception_message
      end

      return result.data
    end
  end
end

Version data entries

40 entries across 40 versions & 1 rubygems

Version Path
schemacop-3.0.33 lib/schemacop/base_schema.rb
schemacop-3.0.32 lib/schemacop/base_schema.rb
schemacop-3.0.31 lib/schemacop/base_schema.rb
schemacop-3.0.30 lib/schemacop/base_schema.rb
schemacop-3.0.29 lib/schemacop/base_schema.rb
schemacop-3.0.28 lib/schemacop/base_schema.rb
schemacop-3.0.27 lib/schemacop/base_schema.rb
schemacop-3.0.26 lib/schemacop/base_schema.rb
schemacop-3.0.25 lib/schemacop/base_schema.rb
schemacop-3.0.24 lib/schemacop/base_schema.rb
schemacop-3.0.23 lib/schemacop/base_schema.rb
schemacop-3.0.22 lib/schemacop/base_schema.rb
schemacop-3.0.21 lib/schemacop/base_schema.rb
schemacop-3.0.20 lib/schemacop/base_schema.rb
schemacop-3.0.19 lib/schemacop/base_schema.rb
schemacop-3.0.18 lib/schemacop/base_schema.rb
schemacop-3.0.17 lib/schemacop/base_schema.rb
schemacop-3.0.16 lib/schemacop/base_schema.rb
schemacop-3.0.15 lib/schemacop/base_schema.rb
schemacop-3.0.14 lib/schemacop/base_schema.rb