KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > jacorb > notification > filter > etcl > EqOperator


1 package org.jacorb.notification.filter.etcl;
2
3 /*
4  * JacORB - a free Java ORB
5  *
6  * Copyright (C) 1999-2004 Gerald Brose
7  *
8  * This library is free software; you can redistribute it and/or
9  * modify it under the terms of the GNU Library General Public
10  * License as published by the Free Software Foundation; either
11  * version 2 of the License, or (at your option) any later version.
12  *
13  * This library is distributed in the hope that it will be useful,
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16  * Library General Public License for more details.
17  *
18  * You should have received a copy of the GNU Library General Public
19  * License along with this library; if not, write to the Free
20  * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
21  *
22  */

23
24 import org.jacorb.notification.filter.EvaluationContext;
25 import org.jacorb.notification.filter.EvaluationException;
26 import org.jacorb.notification.filter.EvaluationResult;
27
28 import antlr.Token;
29
30 /** A simple node to represent EQ operation */
31 public class EqOperator extends BinaryOperator {
32
33     private static final String JavaDoc VALUE = "==";
34     
35     public EqOperator(Token tok) {
36         super(tok);
37         setName("EqOperator");
38     }
39
40     public EvaluationResult evaluate(EvaluationContext context,
41             EvaluationResult left, EvaluationResult right) throws EvaluationException {
42         
43         if (left.compareTo( right) == 0) {
44             return EvaluationResult.BOOL_TRUE;
45         }
46         return EvaluationResult.BOOL_FALSE;
47     }
48
49     public String JavaDoc toString() {
50         return VALUE;
51     }
52
53     public void acceptInOrder(AbstractTCLVisitor visitor) throws VisitorException {
54         left().acceptInOrder(visitor);
55         visitor.visitEq(this);
56         right().acceptInOrder(visitor);
57     }
58
59     public void acceptPreOrder(AbstractTCLVisitor visitor) throws VisitorException {
60         visitor.visitEq(this);
61         left().acceptPreOrder(visitor);
62         right().acceptPreOrder(visitor);
63     }
64
65     public void acceptPostOrder(AbstractTCLVisitor visitor) throws VisitorException {
66         left().acceptPostOrder(visitor);
67         right().acceptPostOrder(visitor);
68         visitor.visitEq(this);
69     }
70 }
71
Popular Tags