class Sass::Selector::Sequence
def weave(path)
-
(Array
- A list of fully-expanded selectors.>)
Parameters:
-
path
(Array
) -- A list of parenthesized selector groups.>
def weave(path) befores = [[]] afters = path.dup until afters.empty? current = afters.shift.dup last_current = [current.pop] while !current.empty? && last_current.first.is_a?(String) || current.last.is_a?(String) last_current.unshift(current.pop) end befores = Sass::Util.flatten(befores.map do |before| subweave(before, current).map {|seqs| seqs + last_current} end, 1) return befores if afters.empty? end end