return stackFrameMap;
}
public Expression compile(Executable exec) throws TransformerConfigurationException {
if (referenceCount > 0 ) {
Expression body = new Block();
compileChildren(exec, (Block)body, true);
if (getConfiguration().getTraceListener() != null) {
TraceWrapper trace = new TraceInstruction(body, this);
trace.setLocationId(allocateLocationId(getSystemId(), getLineNumber()));
trace.setParentExpression(procedure);
body = trace;
}
try {
procedure.setUseAttributeSets(useAttributeSets);
procedure.setNameCode(getObjectNameCode());
procedure.setBody(body.simplify(getStaticContext()));
procedure.setStackFrameMap(stackFrameMap);
procedure.setSystemId(getSystemId());
procedure.setLineNumber(getLineNumber());
procedure.setExecutable(exec);
} catch (XPathException e) {