Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
S
spdlog
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Libraries
spdlog
Commits
260a7450
Commit
260a7450
authored
Apr 28, 2017
by
Gabi Melman
Committed by
GitHub
Apr 28, 2017
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #425 from jcelerier/feature/final_qualifier
Add an optional final qualifier to types
parents
9e6d81de
4da5fa25
Changes
9
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
48 additions
and
35 deletions
+48
-35
include/spdlog/async_logger.h
include/spdlog/async_logger.h
+1
-1
include/spdlog/common.h
include/spdlog/common.h
+5
-0
include/spdlog/details/pattern_formatter_impl.h
include/spdlog/details/pattern_formatter_impl.h
+26
-26
include/spdlog/formatter.h
include/spdlog/formatter.h
+1
-1
include/spdlog/sinks/ansicolor_sink.h
include/spdlog/sinks/ansicolor_sink.h
+1
-1
include/spdlog/sinks/base_sink.h
include/spdlog/sinks/base_sink.h
+1
-1
include/spdlog/sinks/file_sinks.h
include/spdlog/sinks/file_sinks.h
+3
-3
include/spdlog/sinks/stdout_sinks.h
include/spdlog/sinks/stdout_sinks.h
+2
-2
include/spdlog/tweakme.h
include/spdlog/tweakme.h
+8
-0
No files found.
include/spdlog/async_logger.h
View file @
260a7450
...
...
@@ -31,7 +31,7 @@ namespace details
class
async_log_helper
;
}
class
async_logger
:
public
logger
class
async_logger
SPDLOG_FINAL
:
public
logger
{
public:
template
<
class
It
>
...
...
include/spdlog/common.h
View file @
260a7450
...
...
@@ -29,6 +29,11 @@
#define SPDLOG_CONSTEXPR constexpr
#endif
// See tweakme.h
#if !defined(SPDLOG_FINAL)
#define SPDLOG_FINAL
#endif
#if defined(__GNUC__) || defined(__clang__)
#define SPDLOG_DEPRECATED __attribute__((deprecated))
#elif defined(_MSC_VER)
...
...
include/spdlog/details/pattern_formatter_impl.h
View file @
260a7450
...
...
@@ -99,7 +99,7 @@ static const days_array& full_days()
static
const
days_array
arr
{
{
"Sunday"
,
"Monday"
,
"Tuesday"
,
"Wednesday"
,
"Thursday"
,
"Friday"
,
"Saturday"
}
};
return
arr
;
}
class
A_formatter
:
public
flag_formatter
class
A_formatter
SPDLOG_FINAL
:
public
flag_formatter
{
void
format
(
details
::
log_msg
&
msg
,
const
std
::
tm
&
tm_time
)
override
{
...
...
@@ -128,7 +128,7 @@ static const months_array& full_months()
static
const
months_array
arr
{
{
"January"
,
"February"
,
"March"
,
"April"
,
"May"
,
"June"
,
"July"
,
"August"
,
"September"
,
"October"
,
"November"
,
"December"
}
};
return
arr
;
}
class
B_formatter
:
public
flag_formatter
class
B_formatter
SPDLOG_FINAL
:
public
flag_formatter
{
void
format
(
details
::
log_msg
&
msg
,
const
std
::
tm
&
tm_time
)
override
{
...
...
@@ -153,7 +153,7 @@ static fmt::MemoryWriter& pad_n_join(fmt::MemoryWriter& w, int v1, int v2, int v
//Date and time representation (Thu Aug 23 15:35:46 2014)
class
c_formatter
:
public
flag_formatter
class
c_formatter
SPDLOG_FINAL
:
public
flag_formatter
{
void
format
(
details
::
log_msg
&
msg
,
const
std
::
tm
&
tm_time
)
override
{
...
...
@@ -164,7 +164,7 @@ class c_formatter:public flag_formatter
// year - 2 digit
class
C_formatter
:
public
flag_formatter
class
C_formatter
SPDLOG_FINAL
:
public
flag_formatter
{
void
format
(
details
::
log_msg
&
msg
,
const
std
::
tm
&
tm_time
)
override
{
...
...
@@ -175,7 +175,7 @@ class C_formatter:public flag_formatter
// Short MM/DD/YY date, equivalent to %m/%d/%y 08/23/01
class
D_formatter
:
public
flag_formatter
class
D_formatter
SPDLOG_FINAL
:
public
flag_formatter
{
void
format
(
details
::
log_msg
&
msg
,
const
std
::
tm
&
tm_time
)
override
{
...
...
@@ -185,7 +185,7 @@ class D_formatter:public flag_formatter
// year - 4 digit
class
Y_formatter
:
public
flag_formatter
class
Y_formatter
SPDLOG_FINAL
:
public
flag_formatter
{
void
format
(
details
::
log_msg
&
msg
,
const
std
::
tm
&
tm_time
)
override
{
...
...
@@ -194,7 +194,7 @@ class Y_formatter:public flag_formatter
};
// month 1-12
class
m_formatter
:
public
flag_formatter
class
m_formatter
SPDLOG_FINAL
:
public
flag_formatter
{
void
format
(
details
::
log_msg
&
msg
,
const
std
::
tm
&
tm_time
)
override
{
...
...
@@ -203,7 +203,7 @@ class m_formatter:public flag_formatter
};
// day of month 1-31
class
d_formatter
:
public
flag_formatter
class
d_formatter
SPDLOG_FINAL
:
public
flag_formatter
{
void
format
(
details
::
log_msg
&
msg
,
const
std
::
tm
&
tm_time
)
override
{
...
...
@@ -212,7 +212,7 @@ class d_formatter:public flag_formatter
};
// hours in 24 format 0-23
class
H_formatter
:
public
flag_formatter
class
H_formatter
SPDLOG_FINAL
:
public
flag_formatter
{
void
format
(
details
::
log_msg
&
msg
,
const
std
::
tm
&
tm_time
)
override
{
...
...
@@ -221,7 +221,7 @@ class H_formatter:public flag_formatter
};
// hours in 12 format 1-12
class
I_formatter
:
public
flag_formatter
class
I_formatter
SPDLOG_FINAL
:
public
flag_formatter
{
void
format
(
details
::
log_msg
&
msg
,
const
std
::
tm
&
tm_time
)
override
{
...
...
@@ -230,7 +230,7 @@ class I_formatter:public flag_formatter
};
// minutes 0-59
class
M_formatter
:
public
flag_formatter
class
M_formatter
SPDLOG_FINAL
:
public
flag_formatter
{
void
format
(
details
::
log_msg
&
msg
,
const
std
::
tm
&
tm_time
)
override
{
...
...
@@ -239,7 +239,7 @@ class M_formatter:public flag_formatter
};
// seconds 0-59
class
S_formatter
:
public
flag_formatter
class
S_formatter
SPDLOG_FINAL
:
public
flag_formatter
{
void
format
(
details
::
log_msg
&
msg
,
const
std
::
tm
&
tm_time
)
override
{
...
...
@@ -248,7 +248,7 @@ class S_formatter:public flag_formatter
};
// milliseconds
class
e_formatter
:
public
flag_formatter
class
e_formatter
SPDLOG_FINAL
:
public
flag_formatter
{
void
format
(
details
::
log_msg
&
msg
,
const
std
::
tm
&
)
override
{
...
...
@@ -259,7 +259,7 @@ class e_formatter:public flag_formatter
};
// microseconds
class
f_formatter
:
public
flag_formatter
class
f_formatter
SPDLOG_FINAL
:
public
flag_formatter
{
void
format
(
details
::
log_msg
&
msg
,
const
std
::
tm
&
)
override
{
...
...
@@ -270,7 +270,7 @@ class f_formatter:public flag_formatter
};
// nanoseconds
class
F_formatter
:
public
flag_formatter
class
F_formatter
SPDLOG_FINAL
:
public
flag_formatter
{
void
format
(
details
::
log_msg
&
msg
,
const
std
::
tm
&
)
override
{
...
...
@@ -281,7 +281,7 @@ class F_formatter:public flag_formatter
};
// AM/PM
class
p_formatter
:
public
flag_formatter
class
p_formatter
SPDLOG_FINAL
:
public
flag_formatter
{
void
format
(
details
::
log_msg
&
msg
,
const
std
::
tm
&
tm_time
)
override
{
...
...
@@ -291,7 +291,7 @@ class p_formatter:public flag_formatter
// 12 hour clock 02:55:02 pm
class
r_formatter
:
public
flag_formatter
class
r_formatter
SPDLOG_FINAL
:
public
flag_formatter
{
void
format
(
details
::
log_msg
&
msg
,
const
std
::
tm
&
tm_time
)
override
{
...
...
@@ -300,7 +300,7 @@ class r_formatter:public flag_formatter
};
// 24-hour HH:MM time, equivalent to %H:%M
class
R_formatter
:
public
flag_formatter
class
R_formatter
SPDLOG_FINAL
:
public
flag_formatter
{
void
format
(
details
::
log_msg
&
msg
,
const
std
::
tm
&
tm_time
)
override
{
...
...
@@ -309,7 +309,7 @@ class R_formatter:public flag_formatter
};
// ISO 8601 time format (HH:MM:SS), equivalent to %H:%M:%S
class
T_formatter
:
public
flag_formatter
class
T_formatter
SPDLOG_FINAL
:
public
flag_formatter
{
void
format
(
details
::
log_msg
&
msg
,
const
std
::
tm
&
tm_time
)
override
{
...
...
@@ -319,7 +319,7 @@ class T_formatter:public flag_formatter
// ISO 8601 offset from UTC in timezone (+-HH:MM)
class
z_formatter
:
public
flag_formatter
class
z_formatter
SPDLOG_FINAL
:
public
flag_formatter
{
public:
const
std
::
chrono
::
seconds
cache_refresh
=
std
::
chrono
::
seconds
(
5
);
...
...
@@ -376,7 +376,7 @@ private:
// Thread id
class
t_formatter
:
public
flag_formatter
class
t_formatter
SPDLOG_FINAL
:
public
flag_formatter
{
void
format
(
details
::
log_msg
&
msg
,
const
std
::
tm
&
)
override
{
...
...
@@ -385,7 +385,7 @@ class t_formatter:public flag_formatter
};
// Current pid
class
pid_formatter
:
public
flag_formatter
class
pid_formatter
SPDLOG_FINAL
:
public
flag_formatter
{
void
format
(
details
::
log_msg
&
msg
,
const
std
::
tm
&
)
override
{
...
...
@@ -394,7 +394,7 @@ class pid_formatter:public flag_formatter
};
class
v_formatter
:
public
flag_formatter
class
v_formatter
SPDLOG_FINAL
:
public
flag_formatter
{
void
format
(
details
::
log_msg
&
msg
,
const
std
::
tm
&
)
override
{
...
...
@@ -402,7 +402,7 @@ class v_formatter:public flag_formatter
}
};
class
ch_formatter
:
public
flag_formatter
class
ch_formatter
SPDLOG_FINAL
:
public
flag_formatter
{
public:
explicit
ch_formatter
(
char
ch
)
:
_ch
(
ch
)
...
...
@@ -417,7 +417,7 @@ private:
//aggregate user chars to display as is
class
aggregate_formatter
:
public
flag_formatter
class
aggregate_formatter
SPDLOG_FINAL
:
public
flag_formatter
{
public:
aggregate_formatter
()
...
...
@@ -436,7 +436,7 @@ private:
// Full info formatter
// pattern: [%Y-%m-%d %H:%M:%S.%e] [%n] [%l] %v
class
full_formatter
:
public
flag_formatter
class
full_formatter
SPDLOG_FINAL
:
public
flag_formatter
{
void
format
(
details
::
log_msg
&
msg
,
const
std
::
tm
&
tm_time
)
override
{
...
...
include/spdlog/formatter.h
View file @
260a7450
...
...
@@ -25,7 +25,7 @@ public:
virtual
void
format
(
details
::
log_msg
&
msg
)
=
0
;
};
class
pattern_formatter
:
public
formatter
class
pattern_formatter
SPDLOG_FINAL
:
public
formatter
{
public:
...
...
include/spdlog/sinks/ansicolor_sink.h
View file @
260a7450
...
...
@@ -21,7 +21,7 @@ namespace sinks
* the output with an ANSI escape sequence color code depending on the severity
* of the message.
*/
class
ansicolor_sink
:
public
sink
class
ansicolor_sink
SPDLOG_FINAL
:
public
sink
{
public:
ansicolor_sink
(
sink_ptr
wrapped_sink
);
...
...
include/spdlog/sinks/base_sink.h
View file @
260a7450
...
...
@@ -31,7 +31,7 @@ public:
base_sink
(
const
base_sink
&
)
=
delete
;
base_sink
&
operator
=
(
const
base_sink
&
)
=
delete
;
void
log
(
const
details
::
log_msg
&
msg
)
override
void
log
(
const
details
::
log_msg
&
msg
)
SPDLOG_FINAL
override
{
std
::
lock_guard
<
Mutex
>
lock
(
_mutex
);
_sink_it
(
msg
);
...
...
include/spdlog/sinks/file_sinks.h
View file @
260a7450
...
...
@@ -26,7 +26,7 @@ namespace sinks
* Trivial file sink with single file as target
*/
template
<
class
Mutex
>
class
simple_file_sink
:
public
base_sink
<
Mutex
>
class
simple_file_sink
SPDLOG_FINAL
:
public
base_sink
<
Mutex
>
{
public:
explicit
simple_file_sink
(
const
filename_t
&
filename
,
bool
truncate
=
false
)
:
_force_flush
(
false
)
...
...
@@ -61,7 +61,7 @@ typedef simple_file_sink<details::null_mutex> simple_file_sink_st;
* Rotating file sink based on size
*/
template
<
class
Mutex
>
class
rotating_file_sink
:
public
base_sink
<
Mutex
>
class
rotating_file_sink
SPDLOG_FINAL
:
public
base_sink
<
Mutex
>
{
public:
rotating_file_sink
(
const
filename_t
&
base_filename
,
...
...
@@ -177,7 +177,7 @@ struct dateonly_daily_file_name_calculator
* Rotating file sink based on date. rotates at midnight
*/
template
<
class
Mutex
,
class
FileNameCalc
=
default_daily_file_name_calculator
>
class
daily_file_sink
:
public
base_sink
<
Mutex
>
class
daily_file_sink
SPDLOG_FINAL
:
public
base_sink
<
Mutex
>
{
public:
//create daily file sink which rotates on given time
...
...
include/spdlog/sinks/stdout_sinks.h
View file @
260a7450
...
...
@@ -18,7 +18,7 @@ namespace sinks
{
template
<
class
Mutex
>
class
stdout_sink
:
public
base_sink
<
Mutex
>
class
stdout_sink
SPDLOG_FINAL
:
public
base_sink
<
Mutex
>
{
using
MyType
=
stdout_sink
<
Mutex
>
;
public:
...
...
@@ -47,7 +47,7 @@ typedef stdout_sink<std::mutex> stdout_sink_mt;
template
<
class
Mutex
>
class
stderr_sink
:
public
base_sink
<
Mutex
>
class
stderr_sink
SPDLOG_FINAL
:
public
base_sink
<
Mutex
>
{
using
MyType
=
stderr_sink
<
Mutex
>
;
public:
...
...
include/spdlog/tweakme.h
View file @
260a7450
...
...
@@ -106,3 +106,11 @@
//
// #define SPDLOG_PREVENT_CHILD_FD
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
// Uncomment to mark some types as final, allowing more optimizations in release
// mode with recent compilers. See GCC's documentation for -Wsuggest-final-types
// for instance.
//
// #define SPDLOG_FINAL final
///////////////////////////////////////////////////////////////////////////////
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment