il.append(classGen.loadTranslet());
il.append(new INVOKEVIRTUAL(indexConstructor));
il.append(DUP);
il.append(methodGen.loadDOM());
il.append(new INVOKEVIRTUAL(keyDom));
il.append(new ASTORE(returnIndex.getIndex()));
// Initialise the index specified in the first parameter of key()
il.append(classGen.loadTranslet());
if (_name == null) {
il.append(new PUSH(cpg,"##id"));
}
else if (_resolvedQName != null) {
il.append(new PUSH(cpg, _resolvedQName.toString()));
}
else {
_name.translate(classGen, methodGen);
}
il.append(new INVOKEVIRTUAL(getKeyIndex));
il.append(new ASTORE(searchIndex.getIndex()));
// LOOP STARTS HERE
// Now we're ready to start traversing the node-set given in
// the key() function's second argument....