INNER CODE UNIT · Rust

parse_upload_size_limit

TheWaWaR/simple-http-server · src/config.rs:486

fn parse_upload_size_limit(value: &str) -> Result<u64, String> {
    let trimmed = value.trim();
    if trimmed.is_empty() {
        return Err("size limit can not be empty".to_owned());
    }

    let suffix_start = trimmed
        .find(|ch: char| !ch.is_ascii_digit())
        .unwrap_or(trimmed.len());
    let (number, suffix) = trimmed.split_at(suffix_start);

    if number.is_empty() {
        return Err("size limit must start with a number".to_owned());
    }

    let value = number.parse::<u64>().map_err(|err| err.to_string())?;
    let multiplier = match suffix.trim().to_ascii_uppercase().as_str() {
        "" | "B" => 1,

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…