public XPathTypeRootNode GetRootNode(Type root, XPathTypeContext context)
        {
            if (_RootNodes.ContainsKey(root))
            {
                return((XPathTypeRootNode)_RootNodes[root].Copy(context));
            }

            var ret = new XPathTypeRootNode(root, context);

            _RootNodes.Add(root, ret);
            return(ret);
        }
Example #2
0
 internal XPathQueryableNode(Type node, MemberInfo memberInfo, XPathTypeNode parent, XPathTypeContext context) :
     base(node, memberInfo, parent, context)
 {
 }
        public XPathTypeNode GetNode(Type node, MemberInfo memberInfo, XPathTypeNode parent, XPathTypeContext context)
        {
            if ((parent == null) && (memberInfo == null))
            {
                return(GetRootNode(node, context));
            }

            return(new XPathQueryableNode(node, memberInfo, parent, context));
        }