Derive Macro encrypt_config_derive::PersistSource
source · #[derive(PersistSource)]
{
// Attributes available to this derive:
#[source]
}
Available on crate feature
persist
only.Expand description
A derive macro helping implemente PersistSource
trait.
Example
#[derive(Serialize, Deserialize)]
struct Foo(String);
// If feature `default_config_dir` is off:
#[derive(PersistSource)]
#[source(value(Foo), path("tests/persist.conf"), default([("key".to_owned(), Foo("value".to_owned()))]))]
struct SourceFoo;
// If feature `default_config_dir` is on:
#[derive(PersistSource)]
#[source(value(Foo), source_name("secret.conf"), default([("key".to_owned(), Foo("value".to_owned()))]))]
struct SourceFoo;