Merge pull request #569 from knocte/fix_cairo_profile_versions_problem
[mono.git] / mcs / class / System.Core / System.Linq.Parallel.QueryNodes / QueryChildNode.cs
index 0b66d7bb6715fbfde0cc411e6a8552df78afe06e..646d7e76715c5dcac09b6c163e4d9c00131c0987 100644 (file)
@@ -29,7 +29,11 @@ using System;
 
 namespace System.Linq.Parallel.QueryNodes
 {
-       internal abstract class QueryChildNode<T, TParent> : QueryBaseNode<T>
+       internal interface QueryChildNode : IVisitableNode {
+               QueryBaseNode Parent { get; }
+       }
+
+       internal abstract class QueryChildNode<T, TParent> : QueryBaseNode<T>, QueryChildNode
        {
                QueryBaseNode<TParent> parent;
 
@@ -39,6 +43,10 @@ namespace System.Linq.Parallel.QueryNodes
                        this.parent = parent;
                }
 
+               QueryBaseNode QueryChildNode.Parent {
+                       get { return parent; }
+               }
+
                internal QueryBaseNode<TParent> Parent {
                        get {
                                return parent;
@@ -47,7 +55,7 @@ namespace System.Linq.Parallel.QueryNodes
 
                public override void Visit (INodeVisitor visitor)
                {
-                       visitor.Visit<T, TParent> (this);
+                       visitor.Visit ((QueryChildNode)this);
                }
        }
 }