KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > sun > el > parser > Node


1 /*
2  * The contents of this file are subject to the terms
3  * of the Common Development and Distribution License
4  * (the "License"). You may not use this file except
5  * in compliance with the License.
6  *
7  * You can obtain a copy of the license at
8  * glassfish/bootstrap/legal/CDDLv1.0.txt or
9  * https://glassfish.dev.java.net/public/CDDLv1.0.html.
10  * See the License for the specific language governing
11  * permissions and limitations under the License.
12  *
13  * When distributing Covered Code, include this CDDL
14  * HEADER in each file and include the License file at
15  * glassfish/bootstrap/legal/CDDLv1.0.txt. If applicable,
16  * add the following below this CDDL HEADER, with the
17  * fields enclosed by brackets "[]" replaced with your
18  * own identifying information: Portions Copyright [yyyy]
19  * [name of copyright owner]
20  *
21  * Copyright 2005 Sun Microsystems, Inc. All rights reserved.
22  */
/* Generated By:JJTree: Do not edit this line. Node.java */
23
24 package com.sun.el.parser;
25
26 import javax.el.ELException;
27 import javax.el.MethodInfo;
28
29 import com.sun.el.lang.EvaluationContext;
30
31 /* All AST nodes must implement this interface. It provides basic
32    machinery for constructing the parent and child relationships
33    between nodes. */

34
35 /**
36  * @author Jacob Hookom [jacob@hookom.net]
37  * @version $Change: 181177 $$DateTime: 2001/06/26 08:45:09 $$Author: kchung $
38  */

39 public interface Node {
40
41   /** This method is called after the node has been made the current
42     node. It indicates that child nodes can now be added to it. */

43   public void jjtOpen();
44
45   /** This method is called after all the child nodes have been
46     added. */

47   public void jjtClose();
48
49   /** This pair of methods are used to inform the node of its
50     parent. */

51   public void jjtSetParent(Node n);
52   public Node jjtGetParent();
53
54   /** This method tells the node to add its argument to the node's
55     list of children. */

56   public void jjtAddChild(Node n, int i);
57
58   /** This method returns a child node. The children are numbered
59      from zero, left to right. */

60   public Node jjtGetChild(int i);
61
62   /** Return the number of children the node has. */
63   public int jjtGetNumChildren();
64   
65   public String JavaDoc getImage();
66   
67   public Object JavaDoc getValue(EvaluationContext ctx) throws ELException;
68   public void setValue(EvaluationContext ctx, Object JavaDoc value) throws ELException;
69   public Class JavaDoc getType(EvaluationContext ctx) throws ELException;
70   public boolean isReadOnly(EvaluationContext ctx) throws ELException;
71   public void accept(NodeVisitor visitor) throws ELException;
72   public MethodInfo getMethodInfo(EvaluationContext ctx, Class JavaDoc[] paramTypes) throws ELException;
73   public Object JavaDoc invoke(EvaluationContext ctx, Class JavaDoc[] paramTypes, Object JavaDoc[] paramValues) throws ELException;
74 }
75
Popular Tags