Beispiel #1
0
        public override Expression Visit(Expression node)
        {
            var args = ExpressionEventArg(node);

            OnExpression.Raise(this, args);
            return(args.Processed ? args.Result : base.Visit(args.Expression));
        }
Beispiel #2
0
 public override void WriteTo(ITextOutput output, ILAstWritingOptions options)
 {
     output.Write("lock (");
     OnExpression.WriteTo(output, options);
     output.WriteLine(") {");
     output.Indent();
     Body.WriteTo(output, options);
     output.Unindent();
     output.WriteLine();
     output.Write("}");
 }
Beispiel #3
0
 public override void WriteTo(ITextOutput output)
 {
     output.Write(".lock (");
     OnExpression.WriteTo(output);
     output.WriteLine(") {");
     output.Indent();
     Body.WriteTo(output);
     output.Unindent();
     output.WriteLine();
     output.Write("}");
 }
Beispiel #4
0
 public override IExplore Expolore(DelegateExpessionExplorer del)
 {
     if (OnExpression != null)
     {
         OnExpression = (Expression)OnExpression.Expolore(del);
     }
     if (Table != null)
     {
         Table = (ITableDesc)Table.Expolore(del);
     }
     return(base.Expolore(del));
 }
Beispiel #5
0
 public override void Prepare()
 {
     Table.Prepare();
     if ((Table is ISelect) && string.IsNullOrEmpty(Alias))
     {
         throw new Exception("Subselect must have alias");
     }
     if (OnExpression != null)
     {
         OnExpression.Prepare();
     }
 }