Enum EnvType

Source
pub enum EnvType {
    Dev,
    Test,
    Stg,
    Prod,
    Custom(&'static str),
}
Expand description

EnvType is an enum that represents the environment type. EnvType is derived from the strum crate, which provides the ability to convert the string to the enum.

§Example

use env_type::types::EnvType;
use std::str::FromStr;

let env = EnvType::from_str("d").unwrap();
assert_eq!(EnvType::Dev, env);

let custom_env = EnvType::Custom("Custom");
assert_eq!(EnvType::Custom("Custom"), custom_env);

Variants§

§

Dev

§

Test

§

Stg

§

Prod

§

Custom(&'static str)

Implementations§

Source§

impl EnvType

Source

pub const fn is_dev(&self) -> bool

Returns true if the enum is EnvType::Dev otherwise false

Source

pub const fn is_test(&self) -> bool

Returns true if the enum is EnvType::Test otherwise false

Source

pub const fn is_stg(&self) -> bool

Returns true if the enum is EnvType::Stg otherwise false

Source

pub const fn is_prod(&self) -> bool

Returns true if the enum is EnvType::Prod otherwise false

Source

pub const fn is_custom(&self) -> bool

Returns true if the enum is EnvType::Custom otherwise false

Source§

impl EnvType

Source

pub fn from_env() -> Self

EnvType::from_env is a function that returns the environment type from the environment variable. This is deligated to from_env_key with EnvType as default from env key. The default environment type is Dev.

§Example
use env_type::types::EnvType;
use std::str::FromStr;

std::env::set_var("ENV", "Production");
let env = EnvType::from_env();
assert_eq!(EnvType::Prod, env);
Source

pub fn from_env_key<K: EnvKey>() -> Self

EnvType::from_env_key is a function that returns the environment type from the environment variable. The default environment type is Dev.

§Example
use env_type::types::EnvType;
use std::str::FromStr;

std::env::set_var("ENV", "Test");
let env = EnvType::from_env_key::<EnvType>();
assert_eq!(EnvType::Test, env);
Source

pub fn from_env_types<S: AsEnvStr, K: EnvKey>(s: S) -> Self

EnvType::from_env_types is a function that returns the EnvType from AsEnvStr and EnvKey.

Source

pub fn from_env_str<T: AsEnvTypeStr>(t: T) -> Self

EnvType::from_env_str is a function that returns the environment type from the string. The default environment type is Dev.

§Example
use env_type::types::{EnvType, AsEnvTypeStr};
use std::str::FromStr;

struct Config {
  env_str: String,
}
let config = Config {
 env_str: "Production".to_string(),
};

impl AsEnvTypeStr for Config {
  fn as_env_type_str(&self) -> Option<String> {
    Some(self.env_str.clone())
  }
}
let env = EnvType::from_env_str(config);
assert_eq!(EnvType::Prod, env);

Trait Implementations§

Source§

impl AsEnvStr for EnvType

EnvType is an implementation of the AsEnvStr trait. EnvType is based on env var.

Source§

impl Clone for EnvType

Source§

fn clone(&self) -> EnvType

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for EnvType

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for EnvType

Source§

fn default() -> EnvType

Returns the “default value” for a type. Read more
Source§

impl EnvKey for EnvType

EnvType is an implementation of the EnvKey trait. The default environment key is “ENV”.

Source§

fn key() -> &'static str

Source§

impl FromStr for EnvType

Source§

type Err = ParseError

The associated error which can be returned from parsing.
Source§

fn from_str(s: &str) -> Result<EnvType, <Self as FromStr>::Err>

Parses a string s to return a value of this type. Read more
Source§

impl Hash for EnvType

Source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
Source§

impl PartialEq for EnvType

Source§

fn eq(&self, other: &EnvType) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl TryFrom<&str> for EnvType

Source§

type Error = ParseError

The type returned in the event of a conversion error.
Source§

fn try_from(s: &str) -> Result<EnvType, <Self as TryFrom<&str>>::Error>

Performs the conversion.
Source§

impl Copy for EnvType

Source§

impl Eq for EnvType

Source§

impl StructuralPartialEq for EnvType

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.