Home / Function/ extract_byte_literal() — tailwindcss Function Reference

extract_byte_literal() — tailwindcss Function Reference

Architecture documentation for the extract_byte_literal() function in lib.rs from the tailwindcss codebase.

Entity Profile

Dependency Diagram

graph TD
  58347e2c_ad9f_c27f_d1a3_2cfee8346de2["extract_byte_literal()"]
  8866d709_3b59_d730_edfc_80aef369b653["lib.rs"]
  58347e2c_ad9f_c27f_d1a3_2cfee8346de2 -->|defined in| 8866d709_3b59_d730_edfc_80aef369b653
  18f30421_7610_6ae0_6a56_553dc8898b5a["parse_bytes_range_attr()"]
  18f30421_7610_6ae0_6a56_553dc8898b5a -->|calls| 58347e2c_ad9f_c27f_d1a3_2cfee8346de2
  style 58347e2c_ad9f_c27f_d1a3_2cfee8346de2 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

crates/classification-macros/src/lib.rs lines 223–253

fn extract_byte_literal(expr: &Expr) -> Result<u8> {
    if let Expr::Lit(ExprLit { lit, .. }) = expr {
        match lit {
            // Existing case: b'a'
            Lit::Byte(lb) => Ok(lb.value()),

            // New case: 0x80, 255, etc.
            Lit::Int(li) => {
                let value = li.base10_parse::<u64>()?;
                if value <= 255 {
                    Ok(value as u8)
                } else {
                    Err(syn::Error::new_spanned(
                        li,
                        format!("Integer literal {} out of range for a byte (0..255)", value),
                    ))
                }
            }

            _ => Err(syn::Error::new_spanned(
                lit,
                "Expected b'...' or an integer literal in range 0..=255",
            )),
        }
    } else {
        Err(syn::Error::new_spanned(
            expr,
            "Expected a literal expression like b'a' or 0x80",
        ))
    }
}

Domain

Subdomains

Frequently Asked Questions

What does extract_byte_literal() do?
extract_byte_literal() is a function in the tailwindcss codebase, defined in crates/classification-macros/src/lib.rs.
Where is extract_byte_literal() defined?
extract_byte_literal() is defined in crates/classification-macros/src/lib.rs at line 223.
What calls extract_byte_literal()?
extract_byte_literal() is called by 1 function(s): parse_bytes_range_attr.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free