rust-irc/examples
John-John Tedro 5189b69e7e Simplify Config structure
This simplifies some of the `Config` structure, in particular this
means:

Parameters which are meaningfully equivalent longer stored in
an `Option<T>`, an example of this is `channels`. If you don't
want to join any channels you simply leave it as empty instead.
In effect, `None` is behaviorally equivalent to `vec![]`.

We don't allocate when accessing certain configuration options.
For example, when accessing `channels` we used to allocate a
vector to handle the "empty case", we simply return the slice
corresponding to the list of channels instead.

We skip serializing empty or optional configuration fields.
From a deserialization perspective this is already something
that was mostly supported through use of `Option<T>` and
`#[serde(default)]`.
2019-12-27 17:12:46 +01:00
..
build-bot.rs Simplify Config structure 2019-12-27 17:12:46 +01:00
convertconf.rs Port to tokio 0.2 2019-12-18 21:06:04 +01:00
multiserver.rs Simplify Config structure 2019-12-27 17:12:46 +01:00
repeater.rs Simplify Config structure 2019-12-27 17:12:46 +01:00
simple.rs Simplify Config structure 2019-12-27 17:12:46 +01:00
simple_ssl.rs Simplify Config structure 2019-12-27 17:12:46 +01:00
tooter.rs Simplify Config structure 2019-12-27 17:12:46 +01:00
tweeter.rs Simplify Config structure 2019-12-27 17:12:46 +01:00