class Mint::StyleBuilder
- Mint::StyleBuilder
- Reference
- Object
Overview
This class is responsible to build the CSS of "style" tags by resolving nested nested at queries and selectors, handling cases of the same rules in different places.
Defined in:
style_builder.crConstructors
Instance Method Summary
- #any?(node : Ast::Node)
- #any?(node : Nil)
- #cases : Hash({Mint::Ast::Node, Mint::StyleBuilder::Selector}, Array(Mint::Ast::Case))
-
#compile
Compiles the processed data into a CSS style sheet.
- #compile_style(node : Ast::Style, compiler : Compiler)
- #ifs : Hash({Mint::Ast::Node, Mint::StyleBuilder::Selector}, Array(Mint::Ast::If))
- #name_pool : Mint::NamePool(String, Nil)
- #prefixed_class_name(node : Ast::Style, id : String | Nil = nil)
-
#process(node : Ast::CssSelector, id : String | Nil, at : String | Nil, parents : Array(String), conditions : Array(String), style_node : Ast::Node)
Processes a Ast::CssSelector
-
#process(node : Ast::CssNestedAt, id : String | Nil, at : String | Nil, selectors : Array(String), conditions : Array(String), style_node : Ast::Node)
Processes an Ast::CssNestedAt
-
#process(body : Array(Ast::Node), id : String | Nil, at : String | Nil, selectors : Array(String), conditions : Array(String), style_node : Ast::Node)
Processes the body of a CSS Ast::Node.
-
#process(node : Ast::Style, id : String | Nil = nil)
The main entry point for processing a "style" tag.
- #property_pool : Mint::NamePool(String, String)
- #selectors : Hash({String?, String?, Array(String), Array(String)}, Mint::StyleBuilder::Selector)
- #style_pool : Mint::StylePool
- #variable_name(name, selector)
- #variables : Hash(Mint::Ast::Node, Hash(String, Array(Mint::Ast::Node | String)))
Constructor Detail
Instance Method Detail
def process(node : Ast::CssSelector, id : String | Nil, at : String | Nil, parents : Array(String), conditions : Array(String), style_node : Ast::Node)
#
Processes a Ast::CssSelector
def process(node : Ast::CssNestedAt, id : String | Nil, at : String | Nil, selectors : Array(String), conditions : Array(String), style_node : Ast::Node)
#
Processes an Ast::CssNestedAt
def process(body : Array(Ast::Node), id : String | Nil, at : String | Nil, selectors : Array(String), conditions : Array(String), style_node : Ast::Node)
#
Processes the body of a CSS Ast::Node.
The main entry point for processing a "style" tag.
def selectors : Hash({String?, String?, Array(String), Array(String)}, Mint::StyleBuilder::Selector)
#