Class: Puppet::Pops::Types::ExpectedActualMismatch Private

Inherits:
Mismatch show all
Defined in:
lib/puppet/pops/types/type_mismatch_describer.rb

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.

Direct Known Subclasses

SizeMismatch, TypeMismatch

Instance Attribute Summary collapse

Attributes inherited from Mismatch

#path

Instance Method Summary collapse

Methods inherited from Mismatch

#canonical_path, #chop_path, #eql?, #format, #merge, #message, #path_string, #to_s

Constructor Details

#initialize(path, expected, actual) ⇒ ExpectedActualMismatch

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.

Returns a new instance of ExpectedActualMismatch.



247
248
249
250
251
# File 'lib/puppet/pops/types/type_mismatch_describer.rb', line 247

def initialize(path, expected, actual)
  super(path)
  @expected = (expected.is_a?(Array) ? PVariantType.maybe_create(expected) : expected).normalize
  @actual = actual.normalize
end

Instance Attribute Details

#actualObject (readonly)

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.



245
246
247
# File 'lib/puppet/pops/types/type_mismatch_describer.rb', line 245

def actual
  @actual
end

#expectedObject (readonly)

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.



245
246
247
# File 'lib/puppet/pops/types/type_mismatch_describer.rb', line 245

def expected
  @expected
end

Instance Method Details

#==(o) ⇒ Object

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.



253
254
255
# File 'lib/puppet/pops/types/type_mismatch_describer.rb', line 253

def ==(o)
  super.==(o) && expected == o.expected && actual == o.actual
end

#hashObject

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.



257
258
259
# File 'lib/puppet/pops/types/type_mismatch_describer.rb', line 257

def hash
  [canonical_path, expected, actual].hash
end