Module: MiniCSS
- Defined in:
- lib/minicss.rb,
lib/minicss/ast.rb,
lib/minicss/sel.rb,
lib/minicss/errors.rb,
lib/minicss/ast/url.rb,
lib/minicss/version.rb,
lib/minicss/ast/decl.rb,
lib/minicss/ast/rule.rb,
lib/minicss/ast/block.rb,
lib/minicss/css/token.rb,
lib/minicss/ast/number.rb,
lib/minicss/css/errors.rb,
lib/minicss/css/parser.rb,
lib/minicss/serializer.rb,
lib/minicss/ast/at_rule.rb,
lib/minicss/ast/function.rb,
lib/minicss/css/position.rb,
lib/minicss/ast/bad_token.rb,
lib/minicss/ast/decl_list.rb,
lib/minicss/ast/dimension.rb,
lib/minicss/css/tokenizer.rb,
lib/minicss/ast/percentage.rb,
lib/minicss/css/ast/at_rule.rb,
lib/minicss/css/refinements.rb,
lib/minicss/ast/string_token.rb,
lib/minicss/ast/syntax_error.rb,
lib/minicss/css/ast/function.rb,
lib/minicss/ast/unicode_range.rb,
lib/minicss/css/ast/stylesheet.rb,
lib/minicss/css/ast/declaration.rb,
lib/minicss/css/ast/simple_block.rb,
lib/minicss/css/ast/qualified_rule.rb,
lib/minicss/css/ast/declaration_list.rb,
ext/minicss_scanner/minicss_scanner.c,
ext/minicss_token_stream/minicss_token_stream.c
Overview
MiniCSS exposes the library’s public API. It bundles high-level helpers for tokenizing raw CSS, parsing it into MiniCSS::AST nodes, and serializing AST structures back to CSS.
Defined Under Namespace
Modules: AST, CSS, Sel Classes: Error, InvalidRuleError, Serializer
Constant Summary collapse
- VERSION =
"0.1.7"
Class Method Summary collapse
-
.parse(input, allow_unicode_ranges: false) ⇒ Array<MiniCSS::AST::Rule, MiniCSS::AST::AtRule, MiniCSS::AST::SyntaxError, Object>
Parse CSS into MiniCSS AST nodes.
-
.serialize(ast) ⇒ String
Serialize MiniCSS AST nodes back into CSS.
-
.tokenize(input, allow_unicode_ranges: false) ⇒ Array<MiniCSS::CSS::Token>
Tokenize a CSS source string or IO.
Class Method Details
.parse(input, allow_unicode_ranges: false) ⇒ Array<MiniCSS::AST::Rule, MiniCSS::AST::AtRule, MiniCSS::AST::SyntaxError, Object>
Parse CSS into MiniCSS AST nodes.
38 39 40 41 42 43 |
# File 'lib/minicss.rb', line 38 def parse(input, allow_unicode_ranges: false) toks = tokenize(input, allow_unicode_ranges:) pars = CSS::Parser.new(toks) sheet = pars.parse_stylesheet AST.convert(sheet) end |
.serialize(ast) ⇒ String
Serialize MiniCSS AST nodes back into CSS.
52 |
# File 'lib/minicss.rb', line 52 def serialize(ast) = Serializer.serialize(ast) |
.tokenize(input, allow_unicode_ranges: false) ⇒ Array<MiniCSS::CSS::Token>
Tokenize a CSS source string or IO.
25 26 27 28 29 |
# File 'lib/minicss.rb', line 25 def tokenize(input, allow_unicode_ranges: false) tok = CSS::Tokenizer.new(input, allow_unicode_ranges:) tok.tokenize tok.tokens end |