Class: Attestor::Policy::And Private

Inherits:
Node
  • Object
show all
Defined in:
lib/attestor/policy/and.rb

Overview

This class is part of a private API. You should avoid using this class if possible, as it may be removed or be changed in the future.

AND-concatenation of several policies (branches)

The policy is valid if all its branches are valid.

Examples:

first.valid?  # => true
second.valid? # => false

composition = Attestor::Policy::And.new(first, second)
composition.validate
# => Policy::InvalidError

Instance Method Summary collapse

Methods inherited from Node

initialize, new, validate

Methods included from Attestor::Policy

#and, included, #invalid?, new, #not, #or, #valid?, #xor

Methods included from Validations::ClassMethods

#follow_policy, #follow_validator, #validators

Methods included from Factory

#and, #not, #or, #xor

Methods included from Validations

included, #invalid

Instance Method Details

#validateundefined

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Checks whether every policy is valid

Examples:

first.valid?  # => true
second.valid? # => false

composition = Attestor::Policy::And.new(first, second)
composition.validate
# => Policy::InvalidError

Returns:

  • (undefined)


27
28
29
30
# File 'lib/attestor/policy/and.rb', line 27

def validate
  return unless any_invalid?
  super
end