Inheritance: WSqlFragment
        //public GraphTraversal.direction dir { get; set; }

        public WInsertEdgeFromTwoSourceSpecification(WSqlStatement SrcSpec, WSqlStatement DestSpec /*, GraphTraversal.direction pDir*/)
        {
            //dir = pDir;
            SrcInsertSource  = (SrcSpec as WInsertEdgeSpecification).SelectInsertSource as WSelectInsertSource;
            DestInsertSource = DestSpec as WSelectQueryBlock;

            if (SrcInsertSource == null || DestInsertSource == null)
            {
                throw new SyntaxErrorException("The insert source of the INSERT EDGE statement must be a SELECT statement.");
            }

            Target  = (SrcSpec as WInsertEdgeSpecification).Target;
            Columns = new List <WColumnReferenceExpression>();
            foreach (var col in (SrcSpec as WInsertEdgeSpecification).Columns)
            {
                Columns.Add(col);
            }
        }
 public virtual void Visit(WSqlStatement node)
 {
     node.AcceptChildren(this);
 }
 public virtual void Visit(WSqlStatement node)
 {
     node.AcceptChildren(this);
 }