示例#1
0
 public virtual Statement VisitFixed(Fixed Fixed)
 {
     if (Fixed == null) return null;
     Fixed.Declarators = (Statement)this.Visit(Fixed.Declarators);
     Fixed.Body = this.VisitBlock(Fixed.Body);
     return Fixed;
 }
示例#2
0
 private Fixed ParseFixed(TokenSet followers){
   Fixed Fixed = new Fixed();
   Fixed.SourceContext = this.scanner.CurrentSourceContext;
   Debug.Assert(this.currentToken == Token.Fixed);
   this.GetNextToken();
   Fixed.Declarators = this.ParseFixedPointerDeclarators(followers|Parser.StatementStart);
   Block b = this.ParseStatementAsBlock(followers);
   Fixed.Body = b;
   if (b != null){
     Fixed.SourceContext.EndPos = b.SourceContext.EndPos;
     if (b.Statements == null)
       this.HandleError(b.SourceContext, Error.PossibleMistakenNullStatement);
   }
   return Fixed;
 }
示例#3
0
 public override Statement VisitFixed(Fixed Fixed)
 {
     if (Fixed == null) return null;
     return base.VisitFixed((Fixed)Fixed.Clone());
 }
 public EventingVisitor(Action<Fixed> visitFixed) { VisitedFixed += visitFixed; } public event Action<Fixed> VisitedFixed; public override Statement VisitFixed(Fixed Fixed) { if (VisitedFixed != null) VisitedFixed(Fixed); return base.VisitFixed(Fixed); }