|
4 | 4 |
|
5 | 5 | ![banner]
|
6 | 6 |
|
7 |
| -> **Manual For v9.95.3** |
| 7 | +> **Manual For v9.95.4** |
8 | 8 |
|
9 | 9 | [](https://travis-ci.org/muflihun/easyloggingpp) [](https://travis-ci.org/muflihun/easyloggingpp) [](https://github.com/muflihun/easyloggingpp/releases/latest)
|
10 | 10 |
|
|
100 | 100 | # Overview
|
101 | 101 | Easylogging++ is single header efficient logging library for C++ applications. It is extremely powerful, highly extendable and configurable to user's requirements. It provides ability to [write your own _sinks_](https://github.com/muflihun/easyloggingpp/tree/master/samples/send-to-network) (via featured referred as `LogDispatchCallback`). This library is currently used by [hundreds of open-source projects on github](https://github.com/search?q=%22easylogging%2B%2B.h%22&type=Code&utf8=%E2%9C%93) and other open-source source control management sites.
|
102 | 102 |
|
103 |
| -This manual is for Easylogging++ v9.95.3. For other versions please refer to corresponding [release](https://github.com/muflihun/easyloggingpp/releases) on github. |
| 103 | +This manual is for Easylogging++ v9.95.4. For other versions please refer to corresponding [release](https://github.com/muflihun/easyloggingpp/releases) on github. |
104 | 104 |
|
105 | 105 | > You may also be interested in [Residue](https://github.com/muflihun/residue/) logging server.
|
106 | 106 |
|
@@ -476,7 +476,11 @@ Following table will explain all command line arguments that you may use to defi
|
476 | 476 | ### Configuration Macros
|
477 | 477 | Some of logging options can be set by macros, this is a thoughtful decision, for example if we have `ELPP_THREAD_SAFE` defined, all the thread-safe functionalities are enabled otherwise disabled (making sure over-head of thread-safety goes with it). To make it easy to remember and prevent possible conflicts, all the macros start with `ELPP_`
|
478 | 478 |
|
479 |
| -NOTE: All the macros either need to be defined before `#include "easylogging++"` - but this gets hard and unreadable if project is getting bigger so we recommend you define all these macros using `-D` option of compiler, for example in case of `g++` you will do `g++ source.cpp ... -DELPP_SYSLOG -DELPP_THREAD_SAFE ...` |
| 479 | +**NOTE:** All the macros can be defined in one of the following ways: |
| 480 | + |
| 481 | + 1. Define macros using `-D` option of compiler, for example in case of `g++` you will do `g++ source.cpp ... -DELPP_SYSLOG -DELPP_THREAD_SAFE ...` (**recommended way**) |
| 482 | + |
| 483 | + 2. Define macros inside `"easylogging++.h"` ([defining macros in other files won't work](https://github.com/muflihun/easyloggingpp/issues/590#issuecomment-346753951)) |
480 | 484 |
|
481 | 485 | | Macro Name | Description |
|
482 | 486 | |------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------|
|
@@ -1015,7 +1019,7 @@ Easylogging++ supports CHECK macros, with these macros you can quickly check whe
|
1015 | 1019 | | `CHECK_GT(a, b)` | Greater than e.g, `CHECK_GT(2, 1) << "How 2 is not greater than 1?";` |
|
1016 | 1020 | | `CHECK_LE(a, b)` | Less than or equal e.g, `CHECK_LE(1, 1) << "1 is not equal or less than 1";` |
|
1017 | 1021 | | `CHECK_GE(a, b)` | Greater than or equal e.g, `CHECK_GE(1, 1) << "1 is not equal or greater than 1";` |
|
1018 |
| -| `CHECK_NOTNULL(pointer)` | Ensures pointer is not null - if OK returns pointer e.g, `explicit MyClass(Obj* obj) : m_obj(CHECK_NOT_NULL(obj)) {}` | |
| 1022 | +| `CHECK_NOTNULL(pointer)` | Ensures pointer is not null. This function does not return anything | |
1019 | 1023 | | `CHECK_STREQ(str1, str2)` | C-string equality (case-sensitive) e.g, `CHECK_STREQ(argv[1], "0") << "First arg cannot be 0";` |
|
1020 | 1024 | | `CHECK_STRNE(str1, str2)` | C-string inequality (case-sensitive) e.g, `CHECK_STRNE(username1, username2) << "Usernames cannot be same";` |
|
1021 | 1025 | | `CHECK_STRCASEEQ(str1, str2)` | C-string inequality (*case-insensitive*) e.g, `CHECK_CASESTREQ(argv[1], "Z") << "First arg cannot be 'z' or 'Z'";` |
|
@@ -1363,7 +1367,7 @@ Easylogging++ has also been tested with following C++ libraries;
|
1363 | 1367 | ```
|
1364 | 1368 | The MIT License (MIT)
|
1365 | 1369 |
|
1366 |
| -Copyright (c) 2017 Muflihun Labs |
| 1370 | +Copyright (c) 2012-2018 Muflihun Labs |
1367 | 1371 |
|
1368 | 1372 | https://github.com/muflihun/easyloggingpp
|
1369 | 1373 | https://muflihun.com
|
|
0 commit comments