Home / Function/ walkVariants() — tailwindcss Function Reference

walkVariants() — tailwindcss Function Reference

Architecture documentation for the walkVariants() function in canonicalize-candidates.ts from the tailwindcss codebase.

Entity Profile

Dependency Diagram

graph TD
  5fbe9f30_4678_6100_0870_5216b48ccf87["walkVariants()"]
  73acd4c1_740a_8390_1437_4748d35bae22["themeToVarVariant()"]
  73acd4c1_740a_8390_1437_4748d35bae22 -->|calls| 5fbe9f30_4678_6100_0870_5216b48ccf87
  d6d6389c_e8ac_a603_fb73_c284bcbea150["arbitraryVariants()"]
  d6d6389c_e8ac_a603_fb73_c284bcbea150 -->|calls| 5fbe9f30_4678_6100_0870_5216b48ccf87
  501c79ac_a9e3_eaff_6439_702972cbae47["arbitraryValueToBareValueVariant()"]
  501c79ac_a9e3_eaff_6439_702972cbae47 -->|calls| 5fbe9f30_4678_6100_0870_5216b48ccf87
  24d8d1d0_89ac_76a1_956a_704ad43fcba6["modernizeArbitraryValuesVariant()"]
  24d8d1d0_89ac_76a1_956a_704ad43fcba6 -->|calls| 5fbe9f30_4678_6100_0870_5216b48ccf87
  style 5fbe9f30_4678_6100_0870_5216b48ccf87 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

packages/tailwindcss/src/canonicalize-candidates.ts lines 903–916

function* walkVariants(variant: Variant) {
  function* inner(
    variant: Variant,
    parent: Extract<Variant, { kind: 'compound' }> | null = null,
  ): Iterable<[Variant, Extract<Variant, { kind: 'compound' }> | null]> {
    yield [variant, parent]

    if (variant.kind === 'compound') {
      yield* inner(variant.variant, variant)
    }
  }

  yield* inner(variant, null)
}

Subdomains

Frequently Asked Questions

What does walkVariants() do?
walkVariants() is a function in the tailwindcss codebase.
What calls walkVariants()?
walkVariants() is called by 4 function(s): arbitraryValueToBareValueVariant, arbitraryVariants, modernizeArbitraryValuesVariant, themeToVarVariant.

Analyze Your Own Codebase

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

Try Supermodel Free