[antlr-interest] Binary Expression Problem!
Sohail Somani
sohail at taggedtype.net
Tue Jun 20 00:39:51 PDT 2006
Try:
EqualityExp: RelationalExp ((Not_Equal|Equal) RelationalExp)+
I forget if antlr supports + though, i usually only use ? * :)
On Tue, 2006-06-20 at 07:23 +0100, Muhammad Masoom Alam wrote:
> Hi All,
>
> The Grammar below is structured in a way that it
> should observes the perority of relational operators.
> But in this Grammar one problem persists i.e. a Binary
> Expression should be comprised of two operands where
> as from the Grammar it is obvivous that it may come up
> with a single operand too. Could any body help me in
> this regard to overcome the single operand issue
> without loosing the operator's perority.
> e.g. the Grammar permits: "Hello" where as the
> required expression is "Hello" = "Hello" without
> loosing the operator's perority.
>
> BinaryExp: EqualityExp;
>
> EqualityExp: RelationalExp ((Not_Equal|Equal)
> RelationalExp)*;
>
> RelationalExp: additiveExp ((GT|GTE|LT|LTE)
> additiveExp)*;
>
> additiveExp: MultipicativeExp
> ((PLUS|MINUS)MultipicativeExp)*;
>
> MultipicativeExp: SimpleExp ((MUL|DIV|MOD)
> SimpleExp)*;
>
> SimpleExp: STRING|CONSTANTVALUE;
>
> Thanks
> MA
>
>
>
>
>
>
>
> ___________________________________________________________
> All new Yahoo! Mail "The new Interface is stunning in its simplicity and ease of use." - PC Magazine
> http://uk.docs.yahoo.com/nowyoucan.html
More information about the antlr-interest
mailing list