我正在解析XML并且正在接收一个哈希或更多哈希的列表,请参阅:
qore -l xml -nX 'parse_xml("<root>
<row><id>1</id><name>foo</name></row>
<row><id>2</id><name>bar</name></row></root>")'
qore -l xml -nX 'parse_xml("<root>
<row><id>1</id><name>foo</name></row></root>")'
我需要知道解析了多少行,但调用elements
或.size()
会返回列表(项目数量)和散列(键数量!)的不同值。
有没有办法在不需要将所有值复制到新的软件列表变量的情况下执行此操作?
hash xml = prase_xml("...");
softlist tmp = xml.root.row; # makes unnecessary copy!
tmp.size();
由于 O操作。
答案 0 :(得分:1)
使用<value>::lsize()伪方法,返回:
1
0
NOTHING
例如:
hash<auto> xml = parse_xml(xmlstr);
int size = xml.root.row.lsize();