Ejemplo n.º 1
0
 public override object VisitQueryExpressionLetClause(QueryExpressionLetClause letClause, object data)
 {
     AddVariable(null, letClause.Identifier,
                 letClause.StartLocation, CurrentEndLocation,
                 false, false, letClause.Expression, null);
     return(base.VisitQueryExpressionLetClause(letClause, data));
 }
        public override object VisitQueryExpressionLetClause(QueryExpressionLetClause queryExpressionLetClause, object data)
        {
            var generateExpression = GenerateExpression(queryExpressionLetClause.Expression);

            if (generateExpression != null)
            {
                aliasToName[queryExpressionLetClause.Identifier] = generateExpression + ".";
            }
            return(base.VisitQueryExpressionLetClause(queryExpressionLetClause, data));
        }
Ejemplo n.º 3
0
        public override object VisitQueryExpressionLetClause(QueryExpressionLetClause queryExpressionLetClause, object data)
        {
            if (SimplifyLetExpression(queryExpressionLetClause.Expression) is LambdaExpression)
            {
                var text = QueryParsingUtils.ToText(queryExpressionLetClause);
                throw new SecurityException("Let expression cannot contain labmda expressions, but got: " + text);
            }

            return(base.VisitQueryExpressionLetClause(queryExpressionLetClause, data));
        }
Ejemplo n.º 4
0
			public override object Visit (Mono.CSharp.Linq.Let l)
			{
				var result = new QueryExpressionLetClause ();
				var location = LocationsBag.GetLocations (l);
				
				if (location != null)
					result.AddChild (new CSharpTokenNode (Convert (location[0]), "let".Length), QueryExpressionWhereClause.Roles.Keyword);
				
				NewAnonymousType aType = l.Expr as NewAnonymousType;
				AnonymousTypeParameter param = ((AnonymousTypeParameter)aType.Parameters[1]);
				result.AddChild (new Identifier (param.Name, Convert (param.Location)));
				
				if (location != null)
					result.AddChild (new CSharpTokenNode (Convert (location[1]), 1), QueryExpressionWhereClause.Roles.Assign);
				
				result.AddChild ((INode)param.Expr.Accept (this), QueryExpressionWhereClause.Roles.Condition);
				return result;
			}
Ejemplo n.º 5
0
 public object VisitQueryExpressionLetClause(QueryExpressionLetClause queryExpressionLetClause, object data)
 {
     AddError(queryExpressionLetClause, "QueryExpressionLetClause is not supported.");
     return(null);
 }
Ejemplo n.º 6
0
 public virtual object VisitQueryExpressionLetClause(QueryExpressionLetClause queryExpressionLetClause, object data)
 {
     throw new global::System.NotImplementedException("QueryExpressionLetClause");
 }
Ejemplo n.º 7
0
		public override object VisitQueryExpressionLetClause(QueryExpressionLetClause letClause, object data)
		{
			AddVariable(null, letClause.Identifier,
			            letClause.StartLocation, CurrentEndLocation,
			            false, false, letClause.Expression, null);
			return base.VisitQueryExpressionLetClause(letClause, data);
		}
Ejemplo n.º 8
0
 public override object VisitQueryExpressionLetClause(QueryExpressionLetClause queryExpressionLetClause, object data)
 {
     return(base.VisitQueryExpressionLetClause(queryExpressionLetClause, data));
 }
Ejemplo n.º 9
0
	void QueryExpressionLetClause(
#line  2476 "cs.ATG" 
out QueryExpressionLetClause wc) {

#line  2477 "cs.ATG" 
		Expression expr; wc = new QueryExpressionLetClause(); wc.StartLocation = la.Location; 
		Expect(141);
		Identifier();

#line  2480 "cs.ATG" 
		wc.Identifier = t.val; 
		Expect(3);
		Expr(
#line  2482 "cs.ATG" 
out expr);

#line  2482 "cs.ATG" 
		wc.Expression = expr; 

#line  2483 "cs.ATG" 
		wc.EndLocation = t.EndLocation; 
	}
Ejemplo n.º 10
0
		public virtual object VisitQueryExpressionLetClause(QueryExpressionLetClause queryExpressionLetClause, object data) {
			Debug.Assert((queryExpressionLetClause != null));
			Debug.Assert((queryExpressionLetClause.Expression != null));
			return queryExpressionLetClause.Expression.AcceptVisitor(this, data);
		}
 public object VisitQueryExpressionLetClause(QueryExpressionLetClause queryExpressionLetClause, object data)
 {
     throw new NotImplementedException();
 }
 private bool IsMatch(QueryExpressionLetClause left, QueryExpressionLetClause right)
 {
     return(left.Identifier == right.Identifier);
 }
		public virtual object VisitQueryExpressionLetClause(QueryExpressionLetClause queryExpressionLetClause, object data) {
			throw new global::System.NotImplementedException("QueryExpressionLetClause");
		}
Ejemplo n.º 14
0
		public virtual object VisitQueryExpressionLetClause(QueryExpressionLetClause queryExpressionLetClause, object data) {
			Debug.Assert((queryExpressionLetClause != null));
			Debug.Assert((queryExpressionLetClause.Expression != null));
			nodeStack.Push(queryExpressionLetClause.Expression);
			queryExpressionLetClause.Expression.AcceptVisitor(this, data);
			queryExpressionLetClause.Expression = ((Expression)(nodeStack.Pop()));
			return null;
		}
Ejemplo n.º 15
0
		public sealed override object VisitQueryExpressionLetClause(QueryExpressionLetClause queryExpressionLetClause, object data) {
			BeginVisit(queryExpressionLetClause);
			object result = TrackedVisitQueryExpressionLetClause(queryExpressionLetClause, data);
			EndVisit(queryExpressionLetClause);
			return result;
		}
Ejemplo n.º 16
0
		public virtual object TrackedVisitQueryExpressionLetClause(QueryExpressionLetClause queryExpressionLetClause, object data) {
			return base.VisitQueryExpressionLetClause(queryExpressionLetClause, data);
		}