Skip to content
This repository was archived by the owner on Sep 20, 2024. It is now read-only.

Repository files navigation

Sample Config

crates.io pagedocs.rs pagelicense: MIT

Automatic generation of sample configs with documentation comments. Just derive the SampleConfig trait on your config types, create an example object and generate a configuration file using that.

Usage

Example:

use sample_config::SampleConfig;/// Example enum.#[derive(Debug,Default,SampleConfig)]enumExampleEnum{/// A.#[default]VariantA,}/// General documentation isn't used.#[derive(Debug,Default,SampleConfig)]structExampleConfig{/// Some optional string.string:Option<String>,/// Some list of numbers.numbers:Vec<usize>,/// Enumeration of values.value:ExampleEnum,}let instance = ExampleConfig::default();let yaml_file_string = instance.generate_sample_yaml();
std::fs::write("output.yaml",&yaml_file_string).unwrap();
std::fs::remove_file("output.yaml").unwrap()

Please take a look at the tests to see more complicated examples.

Lints

This projects uses a bunch of clippy lints for higher code quality and style.

Install cargo-lints using cargo install --git https://github.com/FlixCoder/cargo-lints. The lints are defined in lints.toml and can be checked by running cargo lints clippy --all-targets --workspace.

About

Generation of sample configs with documentation comments.

Topics

Resources

Stars

2 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages