System.Xml.Xsl.Qil.QilTypeChecker.CheckFunction C# (CSharp) Method

CheckFunction() public method

public CheckFunction ( QilFunction node ) : XmlQueryType
node QilFunction
return XmlQueryType
        public XmlQueryType CheckFunction(QilFunction node) {
            CheckClassAndNodeType(node[0], typeof(QilList), QilNodeType.FormalParameterList);
            Check(node[2].NodeType == QilNodeType.False || node[2].NodeType == QilNodeType.True, node, "SideEffects must either be True or False");
            Check(node.Definition.XmlType.IsSubtypeOf(node.XmlType), node, "Function definition's xml type must be a subtype of the function's return type");
            return node.XmlType;
        }
        

Usage Example

Exemplo n.º 1
0
        //-----------------------------------------------
        // 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);
        }
QilTypeChecker