//-----------------------------------------------
// function definition and invocation
//-----------------------------------------------
public QilFunction Function(QilNode arguments, QilNode definition, QilNode sideEffects, XmlQueryType xmlType)
{
QilFunction n = new QilFunction(QilNodeType.Function, arguments, definition, sideEffects, xmlType);
n.XmlType = _typeCheck.CheckFunction(n);
TraceNode(n);
return(n);
}