net.sf.saxon.instruct
public class WithParam extends GeneralVariable
Field Summary | |
---|---|
int | parameterId |
boolean | typeChecked |
Constructor Summary | |
---|---|
WithParam() |
Method Summary | |
---|---|
static void | displayExpressions(WithParam[] params, ExpressionPresenter out)
DIsplay the parameter expressions |
ValueRepresentation | evaluateVariable(XPathContext context)
Evaluate the variable (method exists only to satisfy the interface) |
int | getInstructionNameCode() |
int | getParameterId()
Get the parameter id, which is essentially an alias for the parameter name,
unique within a stylesheet |
static void | getXPathExpressions(WithParam[] params, List list)
Get the XPath expressions used in an array of WithParam parameters (add them to the supplied list) |
boolean | isTypeChecked()
Ask whether static type checking has been done |
static void | optimize(ExpressionVisitor visitor, WithParam[] params, ItemType contextItemType) |
TailCall | processLeavingTail(XPathContext context) |
static void | promoteParams(Expression parent, WithParam[] params, PromotionOffer offer)
Promote the expressions in a set of with-param elements. |
static boolean | replaceXPathExpression(WithParam[] params, Expression original, Expression replacement)
Replace a subexpression |
void | setParameterId(int id)
Allocate a number which is essentially an alias for the parameter name,
unique within a stylesheet |
void | setTypeChecked(boolean checked)
Say whether this parameter will have been typechecked by the caller to ensure it satisfies
the required type, in which case the callee need not do a dynamic type check |
static void | simplify(WithParam[] params, ExpressionVisitor visitor) |
static void | typeCheck(WithParam[] params, ExpressionVisitor visitor, ItemType contextItemType) |
Returns: the parameter id
Returns: true if the caller has done static type checking against the type required by the callee
Parameters: id the parameter id
Parameters: checked true if the caller has done static type checking against the required type