class Definition::Types::Base

Attributes

context[RW]
name[RW]

Public Class Methods

new(name, context: {}) click to toggle source
# File lib/definition/types/base.rb, line 11
def initialize(name, context: {})
  self.name = name
  self.context = context
end

Public Instance Methods

conform(_value) click to toggle source
# File lib/definition/types/base.rb, line 23
def conform(_value)
  raise NotImplementedError
end
explain(value) click to toggle source
# File lib/definition/types/base.rb, line 16
def explain(value)
  result = conform(value)
  return "value passes definition" if result.passed?

  result.error_message
end