Beispiel #1
0
 internal static WMatchPath GetMatchPath(GremlinMatchPath path)
 {
     return(new WMatchPath()
     {
         PathEdgeList = GetPathEdgeList(path),
         Tail = GetPathTail(path)
     });
 }
Beispiel #2
0
        internal static WSchemaObjectName GetPathSource(GremlinMatchPath path)
        {
            var edge = path.EdgeVariable as GremlinEdgeTableVariable;

            if (edge.EdgeType == WEdgeType.InEdge)
            {
                return(GetSchemaObjectName(path.SinkVariable.GetVariableName()));
            }
            else
            {
                return(GetSchemaObjectName(path.SourceVariable?.GetVariableName()));
            }
        }
Beispiel #3
0
 internal static List <Tuple <WSchemaObjectName, WEdgeColumnReferenceExpression> > GetPathEdgeList(GremlinMatchPath path)
 {
     return(new List <Tuple <WSchemaObjectName, WEdgeColumnReferenceExpression> >()
     {
         new Tuple <WSchemaObjectName, WEdgeColumnReferenceExpression>(
             GetPathSource(path),
             GetEdgeColumnReferenceExpr(path.EdgeVariable as GremlinEdgeTableVariable)
             )
     });
 }
Beispiel #4
0
 internal void AddPath(GremlinMatchPath path)
 {
     PathList.Add(path);
 }