Re: PEReferences in comments

John Cowan (cowan@locke.ccil.org)
Thu, 06 Aug 1998 16:43:54 -0400


Chris Hubick wrote:

> I am just sitting down to write the code to do PEReference
> expansion at the lexical level, and was wondering if I have to be able to
> shut it off, or if I can just process a _whole_ external entity, which I
> am pretty sure I can't. Toggling reference expansion makes this _much_
> more complicated. Well, if I just escaped comments looking for '<!--' and
> '-->' it wouldn't be that hard, but that is the cheap way out, I want
> this code to be more reuseable than that.

Oh, I don't know. It's common for preprocessors to strip comments;
the traditional C preprocessor did so, and so does the GNU C compiler
working in preprocessor-only mode.

> My XMLSource object acts as a
> buffer, and the parser moves forward and back in that buffer (array type
> syntax) while trying to identify what is next in the file.

Why backward and forward? Pass through everything except a
% or a <!--. If it's a %, collect the following Name and the ;,
look it up, pass through the value. If it's a <!--, skip everything
till -->.

> The thing is,
> "what is next" in this case may (almost everything) or may not (comments)
> want PEReference expansion, so I have to be able to say, get me the
> character at index x, with PERef's expanded or without.
>
> And I am writing this parser in my _free_ time!? For fun!? God I'm a geek!

Sounds like you're working too hard, too.

-- 
John Cowan	http://www.ccil.org/~cowan		cowan@ccil.org
	You tollerday donsk?  N.  You tolkatiff scowegian?  Nn.
	You spigotty anglease?  Nnn.  You phonio saxo?  Nnnn.
		Clear all so!  'Tis a Jute.... (Finnegans Wake 16.5)