示例#1
0
 public override object VisitQueryExpressionFromClause(QueryExpressionFromClause fromClause, object data)
 {
     AddVariable(fromClause.Type, fromClause.Identifier,
                 fromClause.StartLocation, CurrentEndLocation,
                 false, true, fromClause.InExpression, null);
     return(base.VisitQueryExpressionFromClause(fromClause, data));
 }
        public override object VisitQueryExpressionFromClause(QueryExpressionFromClause fromClause, object data)
        {
            QueryExpression parent = fromClause.Parent as QueryExpression;

            AddVariable(fromClause.Type, fromClause.Identifier,
                        fromClause.StartLocation, CurrentEndLocation,
                        false, true, fromClause.InExpression, null, parent != null && parent.IsQueryContinuation);
            return(base.VisitQueryExpressionFromClause(fromClause, data));
        }
示例#3
0
        public override object VisitQueryExpressionFromClause(QueryExpressionFromClause fromClause, object data)
        {
            // TODO : reimplement this!
//			QueryExpression parent = fromClause.Parent as QueryExpression;
//			foreach (CollectionRangeVariable variable in fromClause.Sources) {
//				AddVariable(variable.Type, variable.Identifier,
//				            variable.StartLocation, CurrentEndLocation,
//				            false, true, variable.Expression, null, parent != null && parent.IsQueryContinuation);
//			}

            return(base.VisitQueryExpressionFromClause(fromClause, data));
        }
        public override object VisitQueryExpressionFromClause(QueryExpressionFromClause queryExpressionFromClause, object data)
        {
            var memberReferenceExpression = queryExpressionFromClause.InExpression as MemberReferenceExpression;

            if (memberReferenceExpression != null)
            {
                var identifierExpression = memberReferenceExpression.TargetObject as IdentifierExpression;
                if (identifierExpression != null && identifierExpression.Identifier != "docs")
                {
                    var generateExpression = GenerateExpression(queryExpressionFromClause.InExpression);
                    if (generateExpression != null)
                    {
                        aliasToName[queryExpressionFromClause.Identifier] = generateExpression + ",";
                    }
                }
            }
            return(base.VisitQueryExpressionFromClause(queryExpressionFromClause, data));
        }
示例#5
0
 public object VisitQueryExpressionFromClause(QueryExpressionFromClause queryExpressionFromClause, object data)
 {
     AddError(queryExpressionFromClause, "QueryExpressionFromClause is not supported.");
     return(null);
 }
示例#6
0
 public override object VisitQueryExpressionFromClause(QueryExpressionFromClause queryExpressionFromClause, object data)
 {
     return(base.VisitQueryExpressionFromClause(queryExpressionFromClause, data));
 }
 public virtual object VisitQueryExpressionFromClause(QueryExpressionFromClause queryExpressionFromClause, object data)
 {
     throw new global::System.NotImplementedException("QueryExpressionFromClause");
 }
		public virtual object VisitQueryExpressionFromClause(QueryExpressionFromClause queryExpressionFromClause, object data) {
			Debug.Assert((queryExpressionFromClause != null));
			Debug.Assert((queryExpressionFromClause.Type != null));
			Debug.Assert((queryExpressionFromClause.InExpression != null));
			nodeStack.Push(queryExpressionFromClause.Type);
			queryExpressionFromClause.Type.AcceptVisitor(this, data);
			queryExpressionFromClause.Type = ((TypeReference)(nodeStack.Pop()));
			nodeStack.Push(queryExpressionFromClause.InExpression);
			queryExpressionFromClause.InExpression.AcceptVisitor(this, data);
			queryExpressionFromClause.InExpression = ((Expression)(nodeStack.Pop()));
			return null;
		}
		public override object VisitQueryExpressionFromClause(QueryExpressionFromClause fromClause, object data)
		{
			AddVariable(fromClause.Type, fromClause.Identifier,
			            fromClause.StartLocation, CurrentEndLocation,
			            false, true, fromClause.InExpression, null);
			return base.VisitQueryExpressionFromClause(fromClause, data);
		}
		public virtual object VisitQueryExpressionFromClause(QueryExpressionFromClause queryExpressionFromClause, object data) {
			throw new global::System.NotImplementedException("QueryExpressionFromClause");
		}
		public sealed override object VisitQueryExpressionFromClause(QueryExpressionFromClause queryExpressionFromClause, object data) {
			BeginVisit(queryExpressionFromClause);
			object result = TrackedVisitQueryExpressionFromClause(queryExpressionFromClause, data);
			EndVisit(queryExpressionFromClause);
			return result;
		}
示例#12
0
	void CollectionRangeVariableDeclaration(
#line  2292 "VBNET.ATG" 
out QueryExpressionFromClause fromClause) {

#line  2294 "VBNET.ATG" 
		fromClause = new QueryExpressionFromClause();
		fromClause.StartLocation = la.Location;
		TypeReference typeName = null;
		Expression inExpr = null;
		
		Identifier();
		if (la.kind == 50) {
			lexer.NextToken();
			TypeName(
#line  2300 "VBNET.ATG" 
out typeName);

#line  2300 "VBNET.ATG" 
			fromClause.Type = typeName; 
		}
		Expect(125);
		Expr(
#line  2301 "VBNET.ATG" 
out inExpr);

#line  2303 "VBNET.ATG" 
		fromClause.InExpression = inExpr;
		fromClause.EndLocation = t.EndLocation;
		
	}
示例#13
0
			public override object Visit (Mono.CSharp.Linq.QueryExpression queryExpression)
			{
				var result = new QueryExpressionFromClause ();
				var location = LocationsBag.GetLocations (queryExpression);
				if (location != null)
					result.AddChild (new CSharpTokenNode (Convert (location[0]), "from".Length), QueryExpressionFromClause.FromKeywordRole);
				// TODO: select identifier
				if (location != null)
					result.AddChild (new CSharpTokenNode (Convert (location[1]), "in".Length), QueryExpressionFromClause.InKeywordRole);
				result.AddChild ((INode)((Mono.CSharp.Linq.AQueryClause)queryExpression.Expr).Expr.Accept (this), QueryExpressionFromClause.Roles.Expression);
				return result;
			}
示例#14
0
	void QueryExpressionFromClause(
#line  2413 "cs.ATG" 
out QueryExpressionFromClause fc) {

#line  2414 "cs.ATG" 
		fc = new QueryExpressionFromClause(); fc.StartLocation = la.Location; 
		
		Expect(137);
		QueryExpressionFromOrJoinClause(
#line  2418 "cs.ATG" 
fc);

#line  2419 "cs.ATG" 
		fc.EndLocation = t.EndLocation; 
	}
示例#15
0
		public virtual object VisitQueryExpressionFromClause(QueryExpressionFromClause queryExpressionFromClause, object data) {
			Debug.Assert((queryExpressionFromClause != null));
			Debug.Assert((queryExpressionFromClause.Type != null));
			Debug.Assert((queryExpressionFromClause.InExpression != null));
			queryExpressionFromClause.Type.AcceptVisitor(this, data);
			return queryExpressionFromClause.InExpression.AcceptVisitor(this, data);
		}
 public object VisitQueryExpressionFromClause(QueryExpressionFromClause queryExpressionFromClause, object data)
 {
     throw new NotImplementedException();
 }
 private bool IsMatch(QueryExpressionFromClause left, QueryExpressionFromClause right)
 {
     return(true);
 }
示例#18
0
			public override object Visit (Mono.CSharp.Linq.SelectMany selectMany)
			{
				var result = new QueryExpressionFromClause ();
// TODO:
//				Mono.CSharp.Linq.Cast cast = selectMany.Expr as Mono.CSharp.Linq.Cast;
				var location = LocationsBag.GetLocations (selectMany);
				if (location != null)
					result.AddChild (new CSharpTokenNode (Convert (location[0]), "from".Length), QueryExpressionFromClause.FromKeywordRole);
				
				//					result.AddChild ((INode)cast.TypeExpr.Accept (this), QueryExpressionFromClause.Roles.ReturnType);
//				if (cast != null)
				
//				result.AddChild (new Identifier (selectMany.SelectIdentifier.Value, Convert (selectMany.SelectIdentifier.Location)), QueryExpressionFromClause.Roles.Identifier);
				//				result.AddChild (new CSharpTokenNode (Convert (location[1]), "in".Length), QueryExpressionFromClause.InKeywordRole);
				
				//				result.AddChild ((INode)(cast != null ? cast.Expr : selectMany.Expr).Accept (this), QueryExpressionFromClause.Roles.Expression);
				
				
				return result;
			}
		public virtual object TrackedVisitQueryExpressionFromClause(QueryExpressionFromClause queryExpressionFromClause, object data) {
			return base.VisitQueryExpressionFromClause(queryExpressionFromClause, data);
		}