[][src]Trait snec::Entry

pub trait Entry: Sized {
    type Data;

    const NAME: &'static str;
}

Trait for type-level identifiers for config entries.

All implementors should be uninhabited types, as the creation of a type implementing Entry doesn't make sense: it's just a type-level marker identifying a configuration field. There are two ways to create such a type:

enum MyUninhabited {}
// Works only on the nightly version of the compiler as of Rust 1.46
struct MyUninhabited (!);

The first one is recommended, as it works on the stable version of the compiler. When the ! type gets stabilized, the second could be used as well, depending on your preference.

Associated Types

type Data

The data value that the entry expects.

Loading content...

Associated Constants

const NAME: &'static str

The textual representation of the name of the entry. Should follow the same naming convention as struct fields and variables, i.e. snake_case.

Loading content...

Implementors

Loading content...