Class: LightningcssRb::AST

Inherits:
Object
  • Object
show all
Defined in:
lib/lightningcss_rb/ast.rb,
lib/lightningcss_rb/ast/selectors.rb,
lib/lightningcss_rb/ast/selectors/id.rb,
lib/lightningcss_rb/ast/selectors/base.rb,
lib/lightningcss_rb/ast/selectors/nesting.rb,
lib/lightningcss_rb/ast/selectors/attribute.rb,
lib/lightningcss_rb/ast/selectors/namespace.rb,
lib/lightningcss_rb/ast/selectors/universal.rb,
lib/lightningcss_rb/ast/selectors/combinator.rb,
lib/lightningcss_rb/ast/selectors/pseudo_class.rb,
lib/lightningcss_rb/ast/selectors/type_selector.rb,
lib/lightningcss_rb/ast/selectors/class_selector.rb,
lib/lightningcss_rb/ast/selectors/pseudo_element.rb

Defined Under Namespace

Modules: Selectors

Constant Summary collapse

UnknownSelectorType =
Class.new(UnknownError)

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(ast) ⇒ AST

Returns a new instance of AST.



11
12
13
# File 'lib/lightningcss_rb/ast.rb', line 11

def initialize(ast)
  @ast = ast.is_a?(String) ? LightningcssRb.parse(ast) : ast
end

Instance Attribute Details

#astObject (readonly)

Returns the value of attribute ast.



9
10
11
# File 'lib/lightningcss_rb/ast.rb', line 9

def ast
  @ast
end

Instance Method Details

#rulesObject



15
16
17
# File 'lib/lightningcss_rb/ast.rb', line 15

def rules
  ast[:rules]
end

#selectorsObject



19
20
21
# File 'lib/lightningcss_rb/ast.rb', line 19

def selectors
  collect_selectors(rules)
end