{
    "mode": "ri",
    "parameter": "Sass::Tree",
    "section": "",
    "url": "https://www.chedong.com/phpMan.php/ri/Sass%3A%3ATree/json",
    "generated": "2026-07-28T16:27:19Z",
    "sections": {
        "Sass::Tree": {
            "content": "(from /home/chedong/.local/share/rdoc)\n------------------------------------------------------------------------\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nA namespace for nodes in the Sass parse tree.\n\nThe Sass parse tree has three states: dynamic, static Sass, and static\nCSS.\n\nWhen it's first parsed, a Sass document is in the dynamic state. It has\nnodes for mixin definitions and `@for` loops and so forth, in addition\nto nodes for CSS rules and properties. Nodes that only appear in this\nstate are called dynamic nodes.\n\n{Tree::Visitors::Perform} creates a static Sass tree, which is\ndifferent. It still has nodes for CSS rules and properties but it\ndoesn't have any dynamic-generation-related nodes. The nodes in this\nstate are in a similar structure to the Sass document: rules and\nproperties are nested beneath one another, although the {Tree::RuleNode}\nselectors are already in their final state. Nodes that can be in this\nstate or in the dynamic state are called static nodes; nodes that\ncan only be in this state are called solely static nodes.\n\n{Tree::Visitors::Cssize} is then used to create a static CSS tree. This\nis like a static Sass tree, but the structure exactly mirrors that of\nthe generated CSS. Rules and properties can't be nested beneath one\nanother in this state.\n\nFinally, {Tree::Visitors::ToCss} can be called on a static CSS tree to\nget the actual CSS code as a string.\n\n\n\n\n\n\n\n\n\n------------------------------------------------------------------------",
            "subsections": []
        }
    },
    "flags": [],
    "examples": [],
    "see_also": []
}