2022-03-11 16:00:09 +00:00
|
|
|
#pragma once
|
|
|
|
#include "Location.h"
|
|
|
|
|
|
|
|
namespace Error
|
|
|
|
{
|
2022-06-14 14:29:51 +00:00
|
|
|
void show_import_line(const Location& loc, std::ostream& output_stream);
|
2022-03-11 16:00:09 +00:00
|
|
|
|
2022-06-14 14:29:51 +00:00
|
|
|
[[noreturn]] void throw_error(const Location& loc, const std::string line_text, const std::string& details);
|
2022-03-11 16:00:09 +00:00
|
|
|
|
2022-06-14 14:29:51 +00:00
|
|
|
[[noreturn]] void throw_error_without_location(const std::string& details);
|
2022-03-11 16:00:09 +00:00
|
|
|
|
2022-06-14 14:29:51 +00:00
|
|
|
void throw_warning(const Location& loc, const std::string line_text, const std::string& details);
|
2022-03-11 16:00:09 +00:00
|
|
|
|
2022-08-24 14:24:32 +00:00
|
|
|
void throw_warning_without_location(const std::string& details);
|
|
|
|
|
2022-06-14 14:29:51 +00:00
|
|
|
void show_import_lines(const Location& loc, void (*import_line_printer)(const Location&, std::ostream&),
|
|
|
|
std::ostream& stream);
|
|
|
|
} // namespace Error
|