Most notably this includes a set of -v suffix macros
(e.g. debugv!
) that provide a superset of the std::dbg!
feature.
“Why write an RFC, when you can just write code?” — 老子 (“Old Master”), 557 BCE
This unenlightened wanderer (游侠) wrote a log crate PR and RFC 317: Inline Expression and Value Logging, before publishing the work as this standalone crate.
See the rustdoc for usage details.
MSRV := 1.32.0
The crate will fail fast on any lower rustc (via a build.rs version check) and is also CI tested on this version, included both 2015 and 2018 edition external macro imports. A PR would be considered to backport the project to earlier rust versions, possibly as far back as 1.16.0 (log's current MSRV). Or consider lobbying for the inclusion of this feature in log itself.
Compile time errors for misuse of -v macros (e.g. 0 arguments, 4 arguments, non-literal prefix argument, missing format specifier, etc.) are tested and verified (see ./test_compile_errors). Rustc versions prior to 1.39.0 may produce less clear errors.
This project is dual licensed under either of following:
-
The Apache License, version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
-
The MIT License (LICENSE-MIT or http://opensource.org/licenses/MIT)
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in tao-log by you, as defined by the Apache License, shall be dual licensed as above, without any additional terms or conditions.