AddCodeSpan() private method

private AddCodeSpan ( Destination dest, LexSpan span ) : void
dest Destination
span LexSpan
return void
Exemplo n.º 1
0
        /// <summary>
        /// This method detects the presence of code *between* rules. Such code has
        /// no unambiguous meaning, and is skipped, with a warning message.
        /// </summary>
        /// <param name="aast"></param>
        internal void FinalizeCode( AAST aast ) {
            for (int i = 0; i < locs.Count; i++) {
                LexSpan loc = locs[i];

                if (loc.startLine < FLine)
                    aast.AddCodeSpan( AAST.Destination.scanProlog, loc );
                else if (loc.startLine > LLine)
                    aast.AddCodeSpan( AAST.Destination.scanEpilog, loc );
                else // code is between rules
                    aast.hdlr.ListError( loc, 110 );
            }
        }