37 gsl::not_null<const TextFormatter *> format,
38 gsl::not_null<const UserDiagnostics *> inner,
42 void remark(
const std::string &tag,
const std::vector<std::string> &lines)
const override;
43 void remark_note(
const std::string &tag,
const std::vector<std::string> &lines)
const override;
45 void warning(
const std::string &tag,
const std::vector<std::string> &lines)
const override;
46 void warning_note(
const std::string &tag,
const std::vector<std::string> &lines)
const override;
48 void error(
const std::string &tag,
const std::vector<std::string> &lines)
const override;
49 void error_note(
const std::string &tag,
const std::vector<std::string> &lines)
const override;
56 gsl::not_null<const UserDiagnostics *> inner_;
Regex-based include/exclude filter for diagnostic tags.
Abstract interface for all error types used in ChainableResult error chains.
Decorator that applies tag-based filtering to any UserDiagnostics implementation.
void emit_fatal_proximate(const Error &err) const override
Emit the proximate (immediate) error in a fatal error chain.
void warning_note(const std::string &tag, const std::vector< std::string > &lines) const override
Display a tagged note message associated with a warning.
void remark(const std::string &tag, const std::vector< std::string > &lines) const override
Display a tagged remark message.
void emit_fatal_root(const Error &err) const override
Emit the root cause error in a fatal error chain.
void error_note(const std::string &tag, const std::vector< std::string > &lines) const override
Display a tagged note message associated with an error.
void emit_fatal_step(const Error &err) const override
Emit an intermediate step error in a fatal error chain.
void remark_note(const std::string &tag, const std::vector< std::string > &lines) const override
Display a tagged note message associated with a remark.
Abstract class for structured error reporting and diagnostic output.
@ warning
Emit a warning and continue decompilation.
@ error
Emit a formatted error and fail decompilation.