equal
deleted
inserted
replaced
54 private def err_element() = err("bad element") |
54 private def err_element() = err("bad element") |
55 private def err_unbalanced(name: String) = |
55 private def err_unbalanced(name: String) = |
56 if (name == "") err("unbalanced element") |
56 if (name == "") err("unbalanced element") |
57 else err("unbalanced element \"" + name + "\"") |
57 else err("unbalanced element \"" + name + "\"") |
58 |
58 |
59 private def parse_attrib(s: CharSequence) = |
59 private def parse_attrib(source: CharSequence) = { |
60 chunks('=', s).toList match { |
60 val s = source.toString |
61 case Nil => err_attribute() |
61 val i = s.indexOf('=') |
62 case "" :: _ => err_attribute() |
62 if (i <= 0) err_attribute() |
63 case a :: xs => (a.toString, xs.mkString("=")) |
63 (s.substring(0, i - 1), s.substring(i + 1)) |
64 } |
64 } |
65 |
65 |
66 |
66 |
67 def parse_body(source: CharSequence) = { |
67 def parse_body(source: CharSequence) = { |
68 |
68 |
69 /* stack operations */ |
69 /* stack operations */ |