class SmartCore::Schema::Checker::Reconciler::Matcher::Result

@api private @since 0.1.0

Attributes

contract_keys_results[R]

@return [SmartCore::Schema::Checker::Rules::Verifier::Result]

@api private @since 0.1.0

extra_keys_results[R]

@return [

SmartCore::Schema::Checker::Rules::ExtraKeys::Success,
SmartCore::Schema::Checker::Rules::ExtraKeys::Failure

] @api private @since 0.1.0

verifiable_hash[R]

@return [Hash<String|Symbol,Any>]

@api private @since 0.1.0

Public Class Methods

new(verifiable_hash) click to toggle source

@param verifiable_hash [SmartCore::Schema::Checker::VerifiableHash] @return [void]

@api private @since 0.1.0

# File lib/smart_core/schema/checker/reconciler/matcher/result.rb, line 31
def initialize(verifiable_hash)
  @verifiable_hash = verifiable_hash
  @lock = SmartCore::Engine::Lock.new
  @contract_keys_results = []
  @extra_keys_results = []
end

Public Instance Methods

complete!() click to toggle source

@return [SmartCore::Schema::Result]

@api private @since 0.1.0

# File lib/smart_core/schema/checker/reconciler/matcher/result.rb, line 81
def complete!
  @lock.synchronize do
    SmartCore::Schema::Checker::Reconciler::Matcher::ResultFinalizer.finalize(self)
  end
end
contract_key_result(result) click to toggle source

@param result [SmartCore::Schema::Checker::Rules::Verifier::Result] @return [void]

@api private @since 0.1.0

# File lib/smart_core/schema/checker/reconciler/matcher/result.rb, line 61
def contract_key_result(result)
  @lock.synchronize { contract_keys_results << result }
end
each_result(&block) click to toggle source

@param block @yield [result] @yieldparam result [

SmartCore::Schema::Checker::Rules::Verifier::Result,
SmartCore::Schema::Checker::Rules::ExtraKeys::Success,
SmartCore::Schema::Checker::Rules::ExtraKeys::Failure

] @return [void]

@api private @since 0.1.0

# File lib/smart_core/schema/checker/reconciler/matcher/result.rb, line 49
def each_result(&block)
  @lock.synchronize do
    contract_keys_results.each(&block)
    extra_keys_results.each(&block)
  end
end
extra_keys_result(result) click to toggle source

@param result [

SmartCore::Schema::Checker::Rules::ExtraKeys::Success,
SmartCore::Schema::Checker::Rules::ExtraKeys::Failure

] @return [void]

@api private @since 0.1.0

# File lib/smart_core/schema/checker/reconciler/matcher/result.rb, line 73
def extra_keys_result(result)
  @lock.synchronize { extra_keys_results << result }
end