Skip to main content

Crate moosicbox_env_utils

Crate moosicbox_env_utils 

Source
Expand description

Compile-time environment variable parsing utilities.

This crate provides macros and const functions for parsing environment variables at compile time. It enables reading and converting environment variables to numeric types during compilation, useful for configuration that needs to be baked into the binary.

§Features

  • Const functions for parsing strings to integers (parse_usize, parse_isize)
  • Macros for reading environment variables as numeric types at compile time
  • Support for optional environment variables with default values
  • Zero runtime overhead - all parsing happens at compile time

§Examples

// Read a required environment variable as usize (panics if not set or invalid)
// const THREADS: usize = env_usize!("THREAD_COUNT");

// Read with a default value
// const BUFFER_SIZE: usize = default_env_usize!("BUFFER_SIZE", 4096);

// Read as an Option (returns None if not set)
// const MAX_RETRIES: Option<usize> = option_env_usize!("MAX_RETRIES");

Macros§

default_env
Returns a compile-time environment variable as a string slice, or a default value if not set.
default_env_u16
Returns a compile-time environment variable as a u16, or a default value if not set.
default_env_u32
Returns a compile-time environment variable as a u32, or a default value if not set.
default_env_u64
Returns a compile-time environment variable as a u64, or a default value if not set.
default_env_usize
Returns a compile-time environment variable as a usize, or a default value if not set.
env_usize
Parses a compile-time environment variable as a usize.
option_env_i8
Returns a compile-time environment variable as an Option<i8>.
option_env_i16
Returns a compile-time environment variable as an Option<i16>.
option_env_i32
Returns a compile-time environment variable as an Option<i32>.
option_env_i64
Returns a compile-time environment variable as an Option<i64>.
option_env_isize
Returns a compile-time environment variable as an Option<isize>.
option_env_u16
Returns a compile-time environment variable as an Option<u16>.
option_env_u32
Returns a compile-time environment variable as an Option<u32>.
option_env_u64
Returns a compile-time environment variable as an Option<u64>.
option_env_usize
Returns a compile-time environment variable as an Option<usize>.

Enums§

ParseIntError
Error type for integer parsing operations.

Functions§

parse_isize
Parses a string slice into an isize at compile time.
parse_usize
Parses a string slice into a usize at compile time.