我设法解决了这个问题,但仍然令我困惑,所以在这里问。
我在一个闭包内部有一些XML / SAX处理代码-调试总是一个噩梦,因为闭包无声地失败了。
它正在处理一些不足-(有些过时)DTD在这里:https://github.com/mcmenaminadrian/lackey_xml/blob/master/lackeyml.dtd
我有一个switch语句:
On branch master
Your branch is based on 'origin/master', but the upstream is gone.
(use "git branch --unset-upstream" to fixup)
nothing to commit, working tree clean
但这每次都默默失败。但是,如果我添加:
void startElement(String ns, String localName, String qName,
Attributes attrs) {
switch (qName) {
case 'instruction':
[some code]
break
case 'store':
case 'load':
case 'modify':
[some code]
break
default:
println "Unrecognised element of type $qname"
}
}
有效。我怎么了?