Macros for logging and debug assertions. nice_dbg!(), nice_trace!(), and the
nice_debug_assert_*!() macros are compiled out during release builds, so they can be used for
asserting adiditonal invariants in debug builds. Check the nice_log!() macro for more
information on nice-plug’s logger. None of the logging functions are realtime-safe, and you
should avoid using them during release builds in any of the functions that may be called from an
audio thread.
nice-plug can handle floating point, integer, boolean, and enum parameters. Parameters are
managed by creating a struct deriving the Params trait containing fields
for those parameter types, and then returning a reference to that object from your
Plugin::params() method. See the Params trait for more
information.
Analogues to the dbg!() macro, but respecting the NICE_LOG environment variable and with all
of the same logging features as the other nice_*!() macros. Like the nice_debug_assert*!()
macros, this is only shown when compiling in debug mode, but the macro will still return the
value in non-debug modes.
A debug_assert!() analogue that prints the error with line number information instead of
panicking. During tests this is upgraded to a regular panicking debug_assert!().
Write something to the logger. This defaults to STDERR unless the user is running Windows and a
debugger has been attached, in which case OutputDebugString() will be used instead.
The same as nice_log!(), but with source and thread information. Like the
nice_debug_assert*!() macros, this is only shown when compiling in debug mode.