[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Stopping as soon as a valid symbol is read
From: |
Hans Aberg |
Subject: |
Re: Stopping as soon as a valid symbol is read |
Date: |
Mon, 25 Jul 2011 17:52:38 +0200 |
On 25 Jul 2011, at 16:22, Ludovic Courtès wrote:
>>> I’m trying to parse a C expression from an input stream. I’d like the
>>> parser to stop as soon as a valid expression is read (or an error is
>>> encountered).
>>>
>>> However, the default behavior is to stop whenever a valid expression
>>> /followed by the end-of-file marker/ is encountered. Thus, if the input
>>> stream contains a sequence of 2 or more expressions, the parser will
>>> report an error because it’s expecting $end after the first expression.
>>>
>>> Any idea how to achieve what I want?
>>
>> It may be the push parser you are looking for. (See the Bison manual, sec.
>> 3.7.11.)
>
> Indeed, thanks!
>
> However, with a pure API, I don’t see how to get yyresult back from user
> code? The code snippet in the manual pushes tokens but never asks for
> the result.
Akim has been working on this parser; perhaps he can give an answer.
Hans
Re: Stopping as soon as a valid symbol is read, Hans Aberg, 2011/07/25