protected internal CatchClause(NRefactory.CatchClause catchClause, IScope scope, INRefcatoryExpressionVisitor visitor)
     : base(scope, visitor)
 {
     _catchClause = catchClause;
     BuildCatchBlock();
     InternalType = Body.Type;
 }
        protected internal override bool DoMatch(AstNode other, PatternMatching.Match match)
        {
            CatchClause o = other as CatchClause;

            return(o != null && this.Type.DoMatch(o.Type, match) && MatchString(this.VariableName, o.VariableName) &&
                   this.Filter.DoMatch(o.Filter, match) && this.Body.DoMatch(o.Body, match));
        }
Exemple #3
0
        S IAstVisitor <T, S> .VisitCatchClause(CatchClause catchClause, T data)
        {
            var handler = CatchClauseVisited;

            if (handler != null)
            {
                handler(catchClause, data);
            }
            return(VisitChildren(catchClause, data));
        }
 void IAstVisitor.VisitCatchClause(CatchClause catchClause)
 {
     Visit(EnterCatchClause, LeaveCatchClause, catchClause);
 }
 public virtual S VisitCatchClause(CatchClause catchClause, T data)
 {
     return(VisitChildren(catchClause, data));
 }
Exemple #6
0
 public override void VisitCatchClause(CatchClause catchClause)
 {
     // Handled in TryCatchStatement
 }
 protected internal CatchClause(NRefactory.CatchClause catchClause, IScope scope, INRefcatoryExpressionVisitor visitor)
     : base(scope, visitor) {
     _catchClause = catchClause;
     BuildCatchBlock();
     InternalType = Body.Type;
 }
Exemple #8
0
 public static CatchClause CatchClause(NRefactory.CatchClause CatchClause, IScope scope, INRefcatoryExpressionVisitor visitor)
 {
     return(new CatchClause(CatchClause, scope, visitor));
 }
 public virtual S VisitCatchClause(CatchClause catchClause, T data)
 {
     throw new NotImplementedException();
 }
Exemple #10
0
 public override AstExpression VisitCatchClause(NRefactory.CatchClause catchClause, IScope scope)
 {
     return(AstExpression.CatchClause(catchClause, scope, this));
 }