Rename builder methods
This commit is contained in:
parent
f0a9e12e88
commit
b2180ae797
@ -21,24 +21,24 @@ namespace cpptrace {
|
||||
formatter& operator=(formatter&&);
|
||||
formatter& operator=(const formatter&);
|
||||
|
||||
formatter& set_header(std::string);
|
||||
formatter& header(std::string);
|
||||
enum class color_mode {
|
||||
always,
|
||||
none,
|
||||
automatic,
|
||||
};
|
||||
formatter& set_color_mode(color_mode);
|
||||
formatter& colors(color_mode);
|
||||
enum class address_mode {
|
||||
raw,
|
||||
object,
|
||||
none,
|
||||
};
|
||||
formatter& set_address_mode(address_mode);
|
||||
formatter& set_snippets(bool);
|
||||
formatter& set_snippet_context(int);
|
||||
formatter& include_column(bool);
|
||||
formatter& show_filtered_frames(bool);
|
||||
formatter& set_filter(std::function<bool(const stacktrace_frame&)>);
|
||||
formatter& addresses(address_mode);
|
||||
formatter& snippets(bool);
|
||||
formatter& snippet_context(int);
|
||||
formatter& columns(bool);
|
||||
formatter& filtered_frame_placeholders(bool);
|
||||
formatter& filter(std::function<bool(const stacktrace_frame&)>);
|
||||
|
||||
std::string format(const stacktrace_frame&) const;
|
||||
std::string format(const stacktrace_frame&, bool color) const;
|
||||
|
||||
@ -183,7 +183,7 @@ namespace cpptrace {
|
||||
|
||||
namespace detail {
|
||||
const formatter& get_default_snippet_formatter() {
|
||||
static formatter snippet_formatter = formatter{}.set_snippets(true);
|
||||
static formatter snippet_formatter = formatter{}.snippets(true);
|
||||
return snippet_formatter;
|
||||
}
|
||||
}
|
||||
|
||||
@ -26,28 +26,28 @@ namespace cpptrace {
|
||||
} options;
|
||||
|
||||
public:
|
||||
void set_header(std::string header) {
|
||||
void header(std::string header) {
|
||||
options.header = std::move(header);
|
||||
}
|
||||
void set_color_mode(formatter::color_mode mode) {
|
||||
void colors(formatter::color_mode mode) {
|
||||
options.color = mode;
|
||||
}
|
||||
void set_address_mode(formatter::address_mode mode) {
|
||||
void addresses(formatter::address_mode mode) {
|
||||
options.addresses = mode;
|
||||
}
|
||||
void set_snippets(bool snippets) {
|
||||
void snippets(bool snippets) {
|
||||
options.snippets = snippets;
|
||||
}
|
||||
void set_snippet_context(int lines) {
|
||||
void snippet_context(int lines) {
|
||||
options.context_lines = lines;
|
||||
}
|
||||
void include_column(bool columns) {
|
||||
void columns(bool columns) {
|
||||
options.columns = columns;
|
||||
}
|
||||
void show_filtered_frames(bool show) {
|
||||
void filtered_frame_placeholders(bool show) {
|
||||
options.show_filtered_frames = show;
|
||||
}
|
||||
void set_filter(std::function<bool(const stacktrace_frame&)> filter) {
|
||||
void filter(std::function<bool(const stacktrace_frame&)> filter) {
|
||||
options.filter = filter;
|
||||
}
|
||||
|
||||
@ -246,36 +246,36 @@ namespace cpptrace {
|
||||
return *this;
|
||||
}
|
||||
|
||||
formatter& formatter::set_header(std::string header) {
|
||||
pimpl->set_header(std::move(header));
|
||||
formatter& formatter::header(std::string header) {
|
||||
pimpl->header(std::move(header));
|
||||
return *this;
|
||||
}
|
||||
formatter& formatter::set_color_mode(color_mode mode) {
|
||||
pimpl->set_color_mode(mode);
|
||||
formatter& formatter::colors(color_mode mode) {
|
||||
pimpl->colors(mode);
|
||||
return *this;
|
||||
}
|
||||
formatter& formatter::set_address_mode(address_mode mode) {
|
||||
pimpl->set_address_mode(mode);
|
||||
formatter& formatter::addresses(address_mode mode) {
|
||||
pimpl->addresses(mode);
|
||||
return *this;
|
||||
}
|
||||
formatter& formatter::set_snippets(bool snippets) {
|
||||
pimpl->set_snippets(snippets);
|
||||
formatter& formatter::snippets(bool snippets) {
|
||||
pimpl->snippets(snippets);
|
||||
return *this;
|
||||
}
|
||||
formatter& formatter::set_snippet_context(int lines) {
|
||||
pimpl->set_snippet_context(lines);
|
||||
formatter& formatter::snippet_context(int lines) {
|
||||
pimpl->snippet_context(lines);
|
||||
return *this;
|
||||
}
|
||||
formatter& formatter::include_column(bool columns) {
|
||||
pimpl->include_column(columns);
|
||||
formatter& formatter::columns(bool columns) {
|
||||
pimpl->columns(columns);
|
||||
return *this;
|
||||
}
|
||||
formatter& formatter::show_filtered_frames(bool show) {
|
||||
pimpl->show_filtered_frames(show);
|
||||
formatter& formatter::filtered_frame_placeholders(bool show) {
|
||||
pimpl->filtered_frame_placeholders(show);
|
||||
return *this;
|
||||
}
|
||||
formatter& formatter::set_filter(std::function<bool(const stacktrace_frame&)> filter) {
|
||||
pimpl->set_filter(std::move(filter));
|
||||
formatter& formatter::filter(std::function<bool(const stacktrace_frame&)> filter) {
|
||||
pimpl->filter(std::move(filter));
|
||||
return *this;
|
||||
}
|
||||
|
||||
|
||||
@ -30,7 +30,7 @@ namespace cpptrace {
|
||||
CPPTRACE_FORCE_NO_INLINE void print_terminate_trace() {
|
||||
try { // try/catch can never be hit but it's needed to prevent TCO
|
||||
formatter{}
|
||||
.set_header("Stack trace to reach terminate handler (most recent call first):")
|
||||
.header("Stack trace to reach terminate handler (most recent call first):")
|
||||
.print(std::cerr, generate_trace(1));
|
||||
} catch(...) {
|
||||
if(!detail::should_absorb_trace_exceptions()) {
|
||||
|
||||
@ -53,7 +53,7 @@ TEST(FormatterTest, Inlines) {
|
||||
|
||||
TEST(FormatterTest, Header) {
|
||||
auto formatter = cpptrace::formatter{}
|
||||
.set_header("Stack trace:");
|
||||
.header("Stack trace:");
|
||||
auto res = split(formatter.format(make_test_stacktrace()), "\n");
|
||||
EXPECT_THAT(
|
||||
res,
|
||||
@ -68,7 +68,7 @@ TEST(FormatterTest, Header) {
|
||||
|
||||
TEST(FormatterTest, NoColumn) {
|
||||
auto formatter = cpptrace::formatter{}
|
||||
.include_column(false);
|
||||
.columns(false);
|
||||
auto res = split(formatter.format(make_test_stacktrace()), "\n");
|
||||
EXPECT_THAT(
|
||||
res,
|
||||
@ -83,7 +83,7 @@ TEST(FormatterTest, NoColumn) {
|
||||
|
||||
TEST(FormatterTest, ObjectAddresses) {
|
||||
auto formatter = cpptrace::formatter{}
|
||||
.set_address_mode(cpptrace::formatter::address_mode::object);
|
||||
.addresses(cpptrace::formatter::address_mode::object);
|
||||
auto res = split(formatter.format(make_test_stacktrace()), "\n");
|
||||
EXPECT_THAT(
|
||||
res,
|
||||
@ -103,7 +103,7 @@ TEST(FormatterTest, Snippets) {
|
||||
trace.frames.push_back({0x1, 0x1001, {line}, {20}, __FILE__, "foo()", false});
|
||||
trace.frames.push_back({0x2, 0x1002, {line + 1}, {20}, __FILE__, "foo()", false});
|
||||
auto formatter = cpptrace::formatter{}
|
||||
.set_snippets(true);
|
||||
.snippets(true);
|
||||
auto res = split(formatter.format(trace), "\n");
|
||||
EXPECT_THAT(
|
||||
res,
|
||||
@ -134,10 +134,10 @@ TEST(FormatterTest, Snippets) {
|
||||
line + 1
|
||||
),
|
||||
cpptrace::microfmt::format(" {}: auto formatter = cpptrace::formatter{{}}", line + 2),
|
||||
cpptrace::microfmt::format(" {}: .set_snippets(true);", line + 3)
|
||||
cpptrace::microfmt::format(" {}: .snippets(true);", line + 3)
|
||||
)
|
||||
);
|
||||
formatter.set_snippet_context(1);
|
||||
formatter.snippet_context(1);
|
||||
res = split(formatter.format(trace), "\n");
|
||||
EXPECT_THAT(
|
||||
res,
|
||||
@ -172,7 +172,7 @@ TEST(FormatterTest, Snippets) {
|
||||
|
||||
TEST(FormatterTest, Colors) {
|
||||
auto formatter = cpptrace::formatter{}
|
||||
.set_color_mode(cpptrace::formatter::color_mode::always);
|
||||
.colors(cpptrace::formatter::color_mode::always);
|
||||
auto res = split(formatter.format(make_test_stacktrace()), "\n");
|
||||
EXPECT_THAT(
|
||||
res,
|
||||
@ -187,7 +187,7 @@ TEST(FormatterTest, Colors) {
|
||||
|
||||
TEST(FormatterTest, Filtering) {
|
||||
auto formatter = cpptrace::formatter{}
|
||||
.set_filter([] (const cpptrace::stacktrace_frame& frame) -> bool {
|
||||
.filter([] (const cpptrace::stacktrace_frame& frame) -> bool {
|
||||
return frame.filename.find("foo.cpp") != std::string::npos;
|
||||
});
|
||||
auto res = split(formatter.format(make_test_stacktrace()), "\n");
|
||||
@ -204,10 +204,10 @@ TEST(FormatterTest, Filtering) {
|
||||
|
||||
TEST(FormatterTest, DontShowFilteredFrames) {
|
||||
auto formatter = cpptrace::formatter{}
|
||||
.set_filter([] (const cpptrace::stacktrace_frame& frame) -> bool {
|
||||
.filter([] (const cpptrace::stacktrace_frame& frame) -> bool {
|
||||
return frame.filename.find("foo.cpp") != std::string::npos;
|
||||
})
|
||||
.show_filtered_frames(false);
|
||||
.filtered_frame_placeholders(false);
|
||||
auto res = split(formatter.format(make_test_stacktrace()), "\n");
|
||||
EXPECT_THAT(
|
||||
res,
|
||||
@ -221,7 +221,7 @@ TEST(FormatterTest, DontShowFilteredFrames) {
|
||||
|
||||
TEST(FormatterTest, MoveSemantics) {
|
||||
auto formatter = cpptrace::formatter{}
|
||||
.set_filter([] (const cpptrace::stacktrace_frame& frame) -> bool {
|
||||
.filter([] (const cpptrace::stacktrace_frame& frame) -> bool {
|
||||
return frame.filename.find("foo.cpp") != std::string::npos;
|
||||
});
|
||||
auto formatter2 = std::move(formatter);
|
||||
@ -251,7 +251,7 @@ TEST(FormatterTest, MoveSemantics) {
|
||||
|
||||
TEST(FormatterTest, CopySemantics) {
|
||||
auto formatter = cpptrace::formatter{}
|
||||
.set_filter([] (const cpptrace::stacktrace_frame& frame) -> bool {
|
||||
.filter([] (const cpptrace::stacktrace_frame& frame) -> bool {
|
||||
return frame.filename.find("foo.cpp") != std::string::npos;
|
||||
});
|
||||
auto formatter2 = formatter;
|
||||
|
||||
Loading…
Reference in New Issue
Block a user