protected override Expression VisitTypeIs(TypeBinaryExpression expression) { SPModelQueryExpressionScope currentScope = stack.Peek(); try { SPModelDescriptor descriptor = SPModelDescriptor.Resolve(expression.TypeOperand); currentScope.Expression = descriptor.GetContentTypeExpression(manager.Descriptor); } catch (ArgumentException) { currentScope.Expression = Caml.False; } return(expression); }
protected override Expression VisitTypeIs(TypeBinaryExpression expression) { if (invariantExpression || builder.SelectExpression != null) { return(base.VisitTypeIs(expression)); } try { SPModelDescriptor descriptor = SPModelDescriptor.Resolve(expression.TypeOperand); currentScope.Expression = descriptor.GetContentTypeExpression(manager.Descriptor); } catch (ArgumentException) { currentScope.Expression = Caml.False; } return(expression); }