Newer
Older
//! This crate provides a simple interface for reading, parsing, and using `.env` style environment
//! files. The goal is to provide comprehensive compatibility with the variety of .env formats
//! and options found in popular tools across languages, both for reading and writing.
//!
//! ## Embedding
//!
//! This library is designed to be easy to use with both Rust and non-Rust projects. The core
//! functionality covers parsing and manipulating environment files. By default, `envish` also
//! includes filesystem support for reading and writing `.env` files, but this can be disabled by
//! turning off default features.
//!
//! It is recommended to disable filesystem support when embedding `envish`, and instead
//! using the platform-native filesystem operations in tandem with this crate's parsing module.
mod env_file;
#[cfg(feature = "fs")]
mod filesystem;
mod parser;
pub use env_file::{ApplyEnvironmentFile, ApplyOptions, EnvironmentFile, EnvironmentFileError};
pub use parser::{FileLine, ValuePart};
#[cfg(feature = "fs")]
pub use filesystem::{dotenv, dotenv_from, dotenv_opts, dotenv_suffix};