# File lib/sass/selector/sequence.rb, line 79 def do_extend(extends, seen = Set.new) paths = Haml::Util.paths(members.map do |sseq_or_op| next [[sseq_or_op]] unless sseq_or_op.is_a?(SimpleSequence) extended = sseq_or_op.do_extend(extends, seen) choices = extended.map {|seq| seq.members} choices.unshift([sseq_or_op]) unless extended.any? {|seq| seq.superselector?(sseq_or_op)} choices end) Haml::Util.flatten(paths.map {|path| weave(path)}, 1).map {|p| Sequence.new(p)} end