2
0
mirror of https://github.com/boostorg/log.git synced 2026-02-12 12:12:17 +00:00

Removed most of Boost.Spirit from the parameter partsers to speedup compilation and reduce binary sizes. This also significantly reduces memory consumption in case of Intel Compiler (down by ~600MiB).

This commit is contained in:
Andrey Semashev
2014-06-22 02:01:23 +04:00
parent da1f448fd5
commit a0ec391663
2 changed files with 160 additions and 91 deletions

View File

@@ -20,6 +20,7 @@
#include <iostream>
#include <cctype>
#include <boost/log/detail/config.hpp>
#include <boost/log/utility/string_literal.hpp>
#include <boost/log/detail/header.hpp>
#ifdef BOOST_HAS_PRAGMA_ONCE
@@ -41,6 +42,7 @@ struct char_constants< char >
{
typedef char char_type;
typedef std::basic_string< char_type > string_type;
typedef boost::log::basic_string_literal< char_type > literal_type;
static const char_type char_comment = '#';
static const char_type char_comma = ',';
@@ -76,8 +78,8 @@ struct char_constants< char >
static const char_type* message_text_keyword() { return "_"; }
static const char_type* true_keyword() { return "true"; }
static const char_type* false_keyword() { return "false"; }
static literal_type true_keyword() { return literal_type("true"); }
static literal_type false_keyword() { return literal_type("false"); }
static const char_type* default_level_attribute_name() { return "Severity"; }
@@ -120,20 +122,20 @@ struct char_constants< char >
static const char_type* simple_event_log_destination() { return "SimpleEventLog"; }
static const char_type* debugger_destination() { return "Debugger"; }
static const char_type* monday_keyword() { return "Monday"; }
static const char_type* short_monday_keyword() { return "Mon"; }
static const char_type* tuesday_keyword() { return "Tuesday"; }
static const char_type* short_tuesday_keyword() { return "Tue"; }
static const char_type* wednesday_keyword() { return "Wednesday"; }
static const char_type* short_wednesday_keyword() { return "Wed"; }
static const char_type* thursday_keyword() { return "Thursday"; }
static const char_type* short_thursday_keyword() { return "Thu"; }
static const char_type* friday_keyword() { return "Friday"; }
static const char_type* short_friday_keyword() { return "Fri"; }
static const char_type* saturday_keyword() { return "Saturday"; }
static const char_type* short_saturday_keyword() { return "Sat"; }
static const char_type* sunday_keyword() { return "Sunday"; }
static const char_type* short_sunday_keyword() { return "Sun"; }
static literal_type monday_keyword() { return literal_type("Monday"); }
static literal_type short_monday_keyword() { return literal_type("Mon"); }
static literal_type tuesday_keyword() { return literal_type("Tuesday"); }
static literal_type short_tuesday_keyword() { return literal_type("Tue"); }
static literal_type wednesday_keyword() { return literal_type("Wednesday"); }
static literal_type short_wednesday_keyword() { return literal_type("Wed"); }
static literal_type thursday_keyword() { return literal_type("Thursday"); }
static literal_type short_thursday_keyword() { return literal_type("Thu"); }
static literal_type friday_keyword() { return literal_type("Friday"); }
static literal_type short_friday_keyword() { return literal_type("Fri"); }
static literal_type saturday_keyword() { return literal_type("Saturday"); }
static literal_type short_saturday_keyword() { return literal_type("Sat"); }
static literal_type sunday_keyword() { return literal_type("Sunday"); }
static literal_type short_sunday_keyword() { return literal_type("Sun"); }
static std::ostream& get_console_log_stream() { return std::clog; }
@@ -169,6 +171,7 @@ struct char_constants< wchar_t >
{
typedef wchar_t char_type;
typedef std::basic_string< char_type > string_type;
typedef boost::log::basic_string_literal< char_type > literal_type;
static const char_type char_comment = L'#';
static const char_type char_comma = L',';
@@ -204,8 +207,8 @@ struct char_constants< wchar_t >
static const char_type* message_text_keyword() { return L"_"; }
static const char_type* true_keyword() { return L"true"; }
static const char_type* false_keyword() { return L"false"; }
static literal_type true_keyword() { return literal_type(L"true"); }
static literal_type false_keyword() { return literal_type(L"false"); }
static const char_type* default_level_attribute_name() { return L"Severity"; }
@@ -248,20 +251,20 @@ struct char_constants< wchar_t >
static const char_type* simple_event_log_destination() { return L"SimpleEventLog"; }
static const char_type* debugger_destination() { return L"Debugger"; }
static const char_type* monday_keyword() { return L"Monday"; }
static const char_type* short_monday_keyword() { return L"Mon"; }
static const char_type* tuesday_keyword() { return L"Tuesday"; }
static const char_type* short_tuesday_keyword() { return L"Tue"; }
static const char_type* wednesday_keyword() { return L"Wednesday"; }
static const char_type* short_wednesday_keyword() { return L"Wed"; }
static const char_type* thursday_keyword() { return L"Thursday"; }
static const char_type* short_thursday_keyword() { return L"Thu"; }
static const char_type* friday_keyword() { return L"Friday"; }
static const char_type* short_friday_keyword() { return L"Fri"; }
static const char_type* saturday_keyword() { return L"Saturday"; }
static const char_type* short_saturday_keyword() { return L"Sat"; }
static const char_type* sunday_keyword() { return L"Sunday"; }
static const char_type* short_sunday_keyword() { return L"Sun"; }
static literal_type monday_keyword() { return literal_type(L"Monday"); }
static literal_type short_monday_keyword() { return literal_type(L"Mon"); }
static literal_type tuesday_keyword() { return literal_type(L"Tuesday"); }
static literal_type short_tuesday_keyword() { return literal_type(L"Tue"); }
static literal_type wednesday_keyword() { return literal_type(L"Wednesday"); }
static literal_type short_wednesday_keyword() { return literal_type(L"Wed"); }
static literal_type thursday_keyword() { return literal_type(L"Thursday"); }
static literal_type short_thursday_keyword() { return literal_type(L"Thu"); }
static literal_type friday_keyword() { return literal_type(L"Friday"); }
static literal_type short_friday_keyword() { return literal_type(L"Fri"); }
static literal_type saturday_keyword() { return literal_type(L"Saturday"); }
static literal_type short_saturday_keyword() { return literal_type(L"Sat"); }
static literal_type sunday_keyword() { return literal_type(L"Sunday"); }
static literal_type short_sunday_keyword() { return literal_type(L"Sun"); }
static std::wostream& get_console_log_stream() { return std::wclog; }