Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

VOA-config

A library for the configuration of technology backends in the “File Hierarchy for the Verification of OS Artifacts” (VOA).

Documentation

This library defines the voa configuration file format.

Installation

This crate does not expose a command line interface, but is instead used by the voa crate.

Man pages

The man page for the configuration file format can be created by calling the following in the root of the source repository (requires lowdown to be installed):

just generate specifications voa-config

The man page is placed into output/manpages/ by default.

Examples

use voa_config::VoaConfig;

fn main() -> testresult::TestResult {
// Load all available and valid configuration files.
let config = VoaConfig::load();

// Query the settings for an OS "example"
let _settings = config.settings_for_os_or_default(&"example".parse()?);

// Query the settings for an OS "example" with purpose "package" and context "my-repo".
let _settings = config.settings_for_context_or_default(&"example".parse()?, &"package".parse()?, &"my-repo".parse()?);
Ok(())
}

Contributing

Please refer to the [contribution guidelines] to learn how to contribute to this project.

License

This project can be used under the terms of the Apache-2.0 or MIT. Contributions to this project, unless noted otherwise, are automatically licensed under the terms of both of those licenses.