Home / Function/ fast_skip() — tailwindcss Function Reference

fast_skip() — tailwindcss Function Reference

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

Entity Profile

Dependency Diagram

graph TD
  9c3ee7ff_3f75_75f5_ff13_eff66c3bc59e["fast_skip()"]
  7e3a6704_e385_93ed_11ae_8ced4b191d6b["fast_skip.rs"]
  9c3ee7ff_3f75_75f5_ff13_eff66c3bc59e -->|defined in| 7e3a6704_e385_93ed_11ae_8ced4b191d6b
  75ac4b8b_4fe9_d324_64ba_6337a9095d52["is_ascii_whitespace()"]
  9c3ee7ff_3f75_75f5_ff13_eff66c3bc59e -->|calls| 75ac4b8b_4fe9_d324_64ba_6337a9095d52
  26698b93_c6e8_79af_e8aa_cad91927c060["load()"]
  9c3ee7ff_3f75_75f5_ff13_eff66c3bc59e -->|calls| 26698b93_c6e8_79af_e8aa_cad91927c060
  0dcef941_55fe_85bf_2351_e36c06f22b54["all_true()"]
  9c3ee7ff_3f75_75f5_ff13_eff66c3bc59e -->|calls| 0dcef941_55fe_85bf_2351_e36c06f22b54
  style 9c3ee7ff_3f75_75f5_ff13_eff66c3bc59e fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

crates/oxide/src/fast_skip.rs lines 7–38

pub fn fast_skip(cursor: &Cursor) -> Option<usize> {
    // If we don't have enough bytes left to check then bail early
    if cursor.pos + STRIDE >= cursor.input.len() {
        return None;
    }

    if !cursor.curr.is_ascii_whitespace() {
        return None;
    }

    let mut offset = 1;

    // SAFETY: We've already checked (indirectly) that this index is valid
    let remaining = unsafe { cursor.input.get_unchecked(cursor.pos..) };

    // NOTE: This loop uses primitives designed to be auto-vectorized
    // Do not change this loop without benchmarking the results
    // And checking the generated assembly using godbolt.org
    for (i, chunk) in remaining.chunks_exact(STRIDE).enumerate() {
        let value = load(chunk);
        let is_whitespace = is_ascii_whitespace(value);
        let is_all_whitespace = all_true(is_whitespace);

        if is_all_whitespace {
            offset = (i + 1) * STRIDE;
        } else {
            break;
        }
    }

    Some(cursor.pos + offset)
}

Domain

Subdomains

Frequently Asked Questions

What does fast_skip() do?
fast_skip() is a function in the tailwindcss codebase, defined in crates/oxide/src/fast_skip.rs.
Where is fast_skip() defined?
fast_skip() is defined in crates/oxide/src/fast_skip.rs at line 7.
What does fast_skip() call?
fast_skip() calls 3 function(s): all_true, is_ascii_whitespace, load.

Analyze Your Own Codebase

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

Try Supermodel Free