# soulog
A library for polished, clean and colourful console logging and error handling.
# Colourful Printing
---
Some utils for printing to the console in colour.
- ## Supported Colours
- None
- Pink
- White
- Blue
- Green
- Cyan
- Red
- Black
- Yellow
- ## Usage
```rust
use soulog::*;
let colourful_text = colour_format![blue("["), none("Example"), blue("] "), none("Here is an example body!")];
println!("{}", colourful_text); ```
# Loggers
---
- A struct that determines what to do with logs and errors, and how to handle them.
- The default logger for smaller applications is `soulog::sbl::PanicLogger` which panics on errors
# Logging
---
For when you want to log an event or just to give an update to the user through the console
```rust
use soulog::*;
pub fn process(mut logger: impl Logger) {
// First part is the logger surrounded by parenthesis, this is the destination the log is going to
// The second part is the origin of the log, the function is called `process` so it should be `Process`
// The third part is the log body, it should be formatted like in a `format!()` macro
log!((logger) Process("Example log of a number: {}", 12));
// You can also have error-like logs such as inconvenience logs
log!((logger.error) Process("Example inconvenience log") as Inconvenience);
}
```