class Puppet::Pops::Validation::Diagnostic

Attributes

arguments[R]
exception[R]
file[R]
issue[R]
severity[R]
source_pos[R]

Public Instance Methods

==(o) click to toggle source

Two diagnostics are considered equal if the have the same issue, location and severity (arguments and exception are ignored)

# File lib/puppet/pops/validation.rb, line 235
def ==(o)
  self.class            == o.class             &&
    same_position?(o)                          &&
    issue.issue_code    == o.issue.issue_code  &&
    file                == o.file              &&
    severity            == o.severity
end
Also aliased as: eql?
eql?(o) click to toggle source
Alias for: ==
hash() click to toggle source
# File lib/puppet/pops/validation.rb, line 250
def hash
  @hash ||= [file, source_pos.offset, issue.issue_code, severity].hash
end

Public Class Methods

new(severity, issue, file, source_pos, arguments={}) click to toggle source
# File lib/puppet/pops/validation.rb, line 221
def initialize severity, issue, file, source_pos, arguments={}, exception=nil
  @severity = severity
  @issue = issue
  @file = file
  @source_pos = source_pos
  @arguments = arguments
  # TODO: Currently unused, the intention is to provide more information (stack backtrace, etc.) when
  # debugging or similar - this to catch internal problems reported as higher level issues.
  @exception = exception
end