源码:
XmlElement xmlStub;
List list;
if(isAnonymous())
return fromXml(xml);
if(isAttribute())
{
XmlValue xmlValue = findAttribute(xml);
if(xmlValue == null)
return null;
xmlStub = new SimpleElement("attribute");
xmlStub.setString(xmlValue.getString());
list = xml.getElementList();
list.add(xmlStub);
try
{
Object obj = fromXml(xmlStub);
return obj;
}
finally
{
list.remove(xmlStub);
}
}else{
XmlElement xmlValue = findElement(xml);
return xmlValue != null ? fromXml(xmlValue) : null;
}
反编译后:
XmlElement xmlStub;
List list;
if(isAnonymous())
return fromXml(xml);
if(!isAttribute())
break MISSING_BLOCK_LABEL_104;
XmlValue xmlValue = findAttribute(xml);
if(xmlValue == null)
return null;
xmlStub = new SimpleElement("attribute");
xmlStub.setString(xmlValue.getString());
list = xml.getElementList();
list.add(xmlStub);
Object obj = fromXml(xmlStub);
list.remove(xmlStub);
return obj;
Exception exception;
exception;
list.remove(xmlStub);
throw exception;
XmlElement xmlValue = findElement(xml);
return xmlValue != null ? fromXml(xmlValue) : null;