Methods Summary |
---|
public void | callArgVisitors(com.sun.org.apache.xpath.internal.XPathVisitor visitor)
super.callArgVisitors(visitor);
if(null != m_arg1)
m_arg1.callVisitors(new Arg1Owner(), visitor);
|
public boolean | canTraverseOutsideSubtree()Tell if this expression or it's subexpressions can traverse outside
the current subtree.
return super.canTraverseOutsideSubtree()
? true : m_arg1.canTraverseOutsideSubtree();
|
public void | checkNumberArgs(int argNum)Check that the number of arguments passed to this function is correct.
if (argNum != 2)
reportWrongNumberArgs();
|
public boolean | deepEquals(com.sun.org.apache.xpath.internal.Expression expr)
if(!super.deepEquals(expr))
return false;
if(null != m_arg1)
{
if(null == ((Function2Args)expr).m_arg1)
return false;
if(!m_arg1.deepEquals(((Function2Args)expr).m_arg1))
return false;
}
else if(null != ((Function2Args)expr).m_arg1)
return false;
return true;
|
public void | fixupVariables(java.util.Vector vars, int globalsSize)This function is used to fixup variables from QNames to stack frame
indexes at stylesheet build time.
super.fixupVariables(vars, globalsSize);
if(null != m_arg1)
m_arg1.fixupVariables(vars, globalsSize);
|
public com.sun.org.apache.xpath.internal.Expression | getArg1()Return the second argument passed to the function (at index 1).
return m_arg1;
|
protected void | reportWrongNumberArgs()Constructs and throws a WrongNumberArgException with the appropriate
message for this function object.
throw new WrongNumberArgsException(XSLMessages.createXPATHMessage("two", null));
|
public void | setArg(com.sun.org.apache.xpath.internal.Expression arg, int argNum)Set an argument expression for a function. This method is called by the
XPath compiler.
// System.out.println("argNum: "+argNum);
if (argNum == 0)
super.setArg(arg, argNum);
else if (1 == argNum)
{
m_arg1 = arg;
arg.exprSetParent(this);
}
else
reportWrongNumberArgs();
|