#env-var #variables #macro #env #dotenv

macro_env

A crate to fetch the environment variable easily through 3 different ways

4 releases

0.1.8 Aug 11, 2023
0.1.7 Aug 10, 2023
0.1.6 Aug 10, 2023
0.1.5 Aug 10, 2023

#941 in Configuration

MIT license

10KB
103 lines

Macro_env: An environment variable seeking crate

Macro_env is a crate to find environment variables.
Originally designed to easily fetch environment variables from different places without having to change a lot of different code.
By simply changing the SearchType in the macro or in the function, it fetches the variable from a different location.

Usage

First add:

[dependencies]
macro_env = "0.1.*"

Macro

// Import the crate, importing the whole crate is the easiest
// You can also manually import the function you need, for .env search for example:
// `use macro_env::{dotenvreader, macro_env};`
use macro_env::*;

// Fetch the environment variable "OS" from the .env file at the cargo.toml level
macro_env!(File, "OS");

// Fetch the environment variable "OS" from the system environment variables
macro_env!(System, "OS");

// Asks the user for enter the input through the terminal
macro_env!(Input);

// All, without specifying the searchtype, will try to find the variable through all 3 methods:
// First it checks for a .env file
// Then by searching for a system variable
// And if both fail, it will ask the user for input
macro_env!(All, "OS");
macro_env!("OS");

EnvSeeker()

use macro_env::*;
use macro_env::SearchType::*;
// You can use envseeker() when you prefer using a function over a macro
envseeker(Envfile, "OS")

Dependencies

~0–280KB