# File htree/doc.rb, line 9 def Doc.new(*args) children = [] args.flatten.each {|arg| case arg when HTree::Doc arg.children.each {|c| next if HTree::XMLDecl === c next if HTree::DocType === c children << c } when HTree::Node children << arg when String children << Text.new(arg) else raise TypeError, "unexpected argument: #{arg.inspect}" end } new!(children) end