class Puppet::ParseErrorWithIssue

Contains an issue code and can be annotated with an environment and a node

Attributes

arguments[R]
basic_message[R]
environment[RW]
issue_code[R]
node[RW]

Public Class Methods

from_issue_and_stack(issue, args = {}) click to toggle source
    # File lib/puppet/error.rb
 96 def self.from_issue_and_stack(issue, args = {})
 97   filename, line = Puppet::Pops::PuppetStack.top_of_stack
 98 
 99   self.new(
100         issue.format(args),
101         filename,
102         line,
103         nil,
104         nil,
105         issue.issue_code,
106         args)
107 end
new(message, file=nil, line=nil, pos=nil, original=nil, issue_code= nil, arguments = nil) click to toggle source

@param message [String] The error message @param file [String] The path to the file where the error was found @param line [Integer] The line in the file @param pos [Integer] The position on the line @param original [Exception] Original exception @param issue_code [Symbol] The issue code @param arguments [Hash{Symbol=>Object}] Issue arguments

Calls superclass method Puppet::ExternalFileError::new
   # File lib/puppet/error.rb
69 def initialize(message, file=nil, line=nil, pos=nil, original=nil, issue_code= nil, arguments = nil)
70   super(message, file, line, pos, original)
71   @issue_code = issue_code
72   @basic_message = message
73   @arguments = arguments
74 end

Public Instance Methods

to_h() click to toggle source
   # File lib/puppet/error.rb
83 def to_h
84   {
85     :issue_code => issue_code,
86     :message => basic_message,
87     :full_message => to_s,
88     :file => file,
89     :line => line,
90     :pos => pos,
91     :environment => environment.to_s,
92     :node => node.to_s,
93   }
94 end
to_s() click to toggle source
Calls superclass method Puppet::ExternalFileError#to_s
   # File lib/puppet/error.rb
76 def to_s
77   msg = super
78   msg = _("Could not parse for environment %{environment}: %{message}") % { environment: environment, message: msg } if environment
79   msg = _("%{message} on node %{node}") % { message: msg, node: node } if node
80   msg
81 end