serv4rs 0.1.7

serv4rs is a powerful, pragmatic, and extremely fast web framework for Rust
Documentation
use lazy_static::lazy_static;

use std::fs::read;
// use std::str::FromStr;
use cargo_manifest::{Manifest, Package};

lazy_static! {
    pub static ref TEMP_DIR: String = std::env::temp_dir().as_path().display().to_string();
    pub static ref ROOT_DIR: &'static str = env!("CARGO_MANIFEST_DIR");
    pub static ref MANIFEST: Manifest = Manifest::from_slice(&read("Cargo.toml").unwrap()).unwrap();
    pub static ref PACKAGE: &'static Package = MANIFEST.package.as_ref().unwrap();
}

// 取得函数名
pub fn get_function_name<F, Args>(_: &F) -> &'static str
where
    F: actix_web::Handler<Args>,
    Args: actix_web::FromRequest + 'static,
    F::Output: actix_web::Responder + 'static,
{
    std::any::type_name::<F>()
}

// 系统临时文件夹
pub fn temp_dir() -> std::string::String {
    std::env::temp_dir().as_path().display().to_string()
}

pub fn file_exists(file_path: &str) -> bool {
    if file_path.is_empty() {
        return false;
    }
    std::path::Path::new(file_path).exists()
}

pub fn temp_upload_folder(server_name: &str) -> String {
    std::path::Path::new(&temp_dir())
        .join(format!("temp_{}", server_name))
        .display()
        .to_string()
}