Source Code Cross Referenced for Node.java in  » Web-Framework » anvil » anvil » script » expression » Java Source Code / Java DocumentationJava Source Code and Java Documentation

Java Source Code / Java Documentation
1. 6.0 JDK Core
2. 6.0 JDK Modules
3. 6.0 JDK Modules com.sun
4. 6.0 JDK Modules com.sun.java
5. 6.0 JDK Modules sun
6. 6.0 JDK Platform
7. Ajax
8. Apache Harmony Java SE
9. Aspect oriented
10. Authentication Authorization
11. Blogger System
12. Build
13. Byte Code
14. Cache
15. Chart
16. Chat
17. Code Analyzer
18. Collaboration
19. Content Management System
20. Database Client
21. Database DBMS
22. Database JDBC Connection Pool
23. Database ORM
24. Development
25. EJB Server geronimo
26. EJB Server GlassFish
27. EJB Server JBoss 4.2.1
28. EJB Server resin 3.1.5
29. ERP CRM Financial
30. ESB
31. Forum
32. GIS
33. Graphic Library
34. Groupware
35. HTML Parser
36. IDE
37. IDE Eclipse
38. IDE Netbeans
39. Installer
40. Internationalization Localization
41. Inversion of Control
42. Issue Tracking
43. J2EE
44. JBoss
45. JMS
46. JMX
47. Library
48. Mail Clients
49. Net
50. Parser
51. PDF
52. Portal
53. Profiler
54. Project Management
55. Report
56. RSS RDF
57. Rule Engine
58. Science
59. Scripting
60. Search Engine
61. Security
62. Sevlet Container
63. Source Control
64. Swing Library
65. Template Engine
66. Test Coverage
67. Testing
68. UML
69. Web Crawler
70. Web Framework
71. Web Mail
72. Web Server
73. Web Services
74. Web Services apache cxf 2.0.1
75. Web Services AXIS2
76. Wiki Engine
77. Workflow Engines
78. XML
79. XML UI
Java
Java Tutorial
Java Open Source
Jar File Download
Java Articles
Java Products
Java by API
Photoshop Tutorials
Maya Tutorials
Flash Tutorials
3ds-Max Tutorials
Illustrator Tutorials
GIMP Tutorials
C# / C Sharp
C# / CSharp Tutorial
C# / CSharp Open Source
ASP.Net
ASP.NET Tutorial
JavaScript DHTML
JavaScript Tutorial
JavaScript Reference
HTML / CSS
HTML CSS Reference
C / ANSI-C
C Tutorial
C++
C++ Tutorial
Ruby
PHP
Python
Python Tutorial
Python Open Source
SQL Server / T-SQL
SQL Server / T-SQL Tutorial
Oracle PL / SQL
Oracle PL/SQL Tutorial
PostgreSQL
SQL / MySQL
MySQL Tutorial
VB.Net
VB.Net Tutorial
Flash / Flex / ActionScript
VBA / Excel / Access / Word
XML
XML Tutorial
Microsoft Office PowerPoint 2007 Tutorial
Microsoft Office Excel 2007 Tutorial
Microsoft Office Word 2007 Tutorial
Java Source Code / Java Documentation » Web Framework » anvil » anvil.script.expression 
Source Cross Referenced  Class Diagram Java Document (Java Doc) 


001:        /*
002:         * $Id: Node.java,v 1.39 2002/09/16 08:05:05 jkl Exp $
003:         *
004:         * Copyright (c) 2002 Njet Communications Ltd. All Rights Reserved.
005:         *
006:         * Use is subject to license terms, as defined in
007:         * Anvil Sofware License, Version 1.1. See LICENSE 
008:         * file, or http://njet.org/license-1.1.txt
009:         */
010:        package anvil.script.expression;
011:
012:        import anvil.core.Any;
013:        import anvil.ErrorListener;
014:        import anvil.codec.Code;
015:        import anvil.script.compiler.ByteCompiler;
016:        import anvil.script.Context;
017:        import anvil.script.Type;
018:        import java.io.IOException;
019:
020:        /**
021:         * class Node
022:         *
023:         * @author: Jani Lehtimäki
024:         */
025:        public class Node {
026:
027:            public static final int GET = 0;
028:            public static final int GET_BOOLEAN = 1;
029:            public static final int CHECK = 2;
030:            public static final int DELETE = 3;
031:            public static final int GET_TYPE = 4;
032:            public static final int GET_REF = 5;
033:
034:            static final public int NONE = 0;
035:            static final public int EXPR_ADD = 100;
036:            static final public int EXPR_AND = 101;
037:            static final public int EXPR_ARRAY = 102;
038:            static final public int EXPR_ASSIGN = 103;
039:            static final public int EXPR_ASSIGN_ADD = 104;
040:            static final public int EXPR_ASSIGN_CONCAT = 105;
041:            static final public int EXPR_ASSIGN_DIVIDE = 106;
042:            static final public int EXPR_ASSIGN_MODULO = 107;
043:            static final public int EXPR_ASSIGN_MULTIPLY = 108;
044:            static final public int EXPR_ASSIGN_SUBTRACT = 109;
045:            static final public int EXPR_ATTRIBUTE = 110;
046:            static final public int EXPR_BOOLEAN_CAST = 111;
047:            static final public int EXPR_CALL = 112;
048:            static final public int EXPR_CLASSOF = 113;
049:            static final public int EXPR_CLONE = 114;
050:            static final public int EXPR_COMPARE = 115;
051:            static final public int EXPR_COMPARISON_CHAIN = 116;
052:            static final public int EXPR_CONCATENATION = 117;
053:            static final public int EXPR_CONDITIONAL = 118;
054:            static final public int EXPR_CONSTANT = 119;
055:            static final public int EXPR_CONSTANT_VARIABLE = 120;
056:            static final public int EXPR_COPY = 121;
057:            static final public int EXPR_DEFINED = 122;
058:            static final public int EXPR_DELETE = 123;
059:            static final public int EXPR_DIVIDE = 124;
060:            static final public int EXPR_EMPTY_REFERENCE = 125;
061:            static final public int EXPR_EQUAL = 126;
062:            static final public int EXPR_EXACT_EQUAL = 127;
063:            static final public int EXPR_EXACT_NOT_EQUAL = 128;
064:            static final public int EXPR_FLOAT_CAST = 129;
065:            static final public int EXPR_GREATER = 130;
066:            static final public int EXPR_GREATER_EQUAL = 131;
067:            static final public int EXPR_HAS = 132;
068:            static final public int EXPR_IMPORT = 133;
069:            static final public int EXPR_IN = 134;
070:            static final public int EXPR_INT_CAST = 135;
071:            static final public int EXPR_INVOKE = 136;
072:            static final public int EXPR_IS = 137;
073:            static final public int EXPR_LESS = 138;
074:            static final public int EXPR_LESS_EQUAL = 139;
075:            static final public int EXPR_LINK = 140;
076:            static final public int EXPR_LIST = 141;
077:            static final public int EXPR_MAPPING = 142;
078:            static final public int EXPR_MATCH = 143;
079:            static final public int EXPR_MODULO = 144;
080:            static final public int EXPR_MULTIPLY = 145;
081:            static final public int EXPR_NAMED = 146;
082:            static final public int EXPR_NAMESPACE = 147;
083:            static final public int EXPR_NEW = 148;
084:            static final public int EXPR_NOT = 149;
085:            static final public int EXPR_NOT_EQUAL = 150;
086:            static final public int EXPR_NO_MATCH = 151;
087:            static final public int EXPR_OR = 152;
088:            static final public int EXPR_POSTFIX_DECREMENT = 153;
089:            static final public int EXPR_POSTFIX_INCREMENT = 154;
090:            static final public int EXPR_PREFIX_DECREMENT = 155;
091:            static final public int EXPR_PREFIX_INCREMENT = 156;
092:            static final public int EXPR_RANGE = 157;
093:            static final public int EXPR_REFERENCE = 158;
094:            static final public int EXPR_SELECT = 159;
095:            static final public int EXPR_SIZEOF = 160;
096:            static final public int EXPR_SPLICE = 161;
097:            static final public int EXPR_STRING_BUFFER = 162;
098:            static final public int EXPR_STRING_CAST = 163;
099:            static final public int EXPR_SUBTRACT = 164;
100:            static final public int EXPR_SYMBOL = 165;
101:            static final public int EXPR_THIS = 166;
102:            static final public int EXPR_TYPE = 167;
103:            static final public int EXPR_TYPEOF = 168;
104:            static final public int EXPR_UNARY_MINUS = 169;
105:            static final public int EXPR_UNARY_PLUS = 170;
106:            static final public int EXPR_VARIABLE = 171;
107:            static final public int EXPR_XOR = 172;
108:            static final public int EXPR_THUNK = 173;
109:            static final public int EXPR_FOREACH = 174;
110:            static final public int EXPR_ASSIGN_INIT = 175;
111:
112:            public Node() {
113:            }
114:
115:            public int typeOf() {
116:                return NONE;
117:            }
118:
119:            public boolean isConstant() {
120:                return false;
121:            }
122:
123:            public boolean needLineNumbers() {
124:                switch (typeOf()) {
125:                case EXPR_TYPE:
126:                case EXPR_DEFINED:
127:                case EXPR_DELETE:
128:                case EXPR_ATTRIBUTE:
129:                case EXPR_EMPTY_REFERENCE:
130:                case EXPR_REFERENCE:
131:                case EXPR_IMPORT:
132:                case EXPR_CALL:
133:                case EXPR_INVOKE:
134:                case EXPR_NEW:
135:                case EXPR_THIS:
136:                case EXPR_VARIABLE:
137:                case EXPR_ASSIGN:
138:                case EXPR_ASSIGN_INIT:
139:                case EXPR_ASSIGN_ADD:
140:                case EXPR_ASSIGN_SUBTRACT:
141:                case EXPR_ASSIGN_MULTIPLY:
142:                case EXPR_ASSIGN_DIVIDE:
143:                case EXPR_ASSIGN_MODULO:
144:                case EXPR_ASSIGN_CONCAT:
145:                    return true;
146:                default:
147:                    return false;
148:                }
149:            }
150:
151:            public boolean isStandalone() {
152:                switch (typeOf()) {
153:                case EXPR_ASSIGN:
154:                case EXPR_ASSIGN_INIT:
155:                case EXPR_ASSIGN_ADD:
156:                case EXPR_ASSIGN_SUBTRACT:
157:                case EXPR_ASSIGN_MULTIPLY:
158:                case EXPR_ASSIGN_DIVIDE:
159:                case EXPR_ASSIGN_MODULO:
160:                case EXPR_ASSIGN_CONCAT:
161:                case EXPR_INVOKE:
162:                case EXPR_CALL:
163:                case EXPR_DELETE:
164:                case EXPR_PREFIX_DECREMENT:
165:                case EXPR_PREFIX_INCREMENT:
166:                case EXPR_POSTFIX_DECREMENT:
167:                case EXPR_POSTFIX_INCREMENT:
168:                case EXPR_NEW:
169:                    return true;
170:
171:                default:
172:                    return false;
173:                }
174:            }
175:
176:            public boolean isAssignable() {
177:                switch (typeOf()) {
178:                case EXPR_EMPTY_REFERENCE:
179:                case EXPR_REFERENCE:
180:                case EXPR_ATTRIBUTE:
181:                case EXPR_VARIABLE:
182:                    return true;
183:                default:
184:                    return false;
185:                }
186:            }
187:
188:            public boolean isUpdatable() {
189:                switch (typeOf()) {
190:                case EXPR_REFERENCE:
191:                case EXPR_ATTRIBUTE:
192:                case EXPR_VARIABLE:
193:                    return true;
194:                default:
195:                    return false;
196:                }
197:            }
198:
199:            public Node optimize() {
200:                return this ;
201:            }
202:
203:            public void check(ErrorListener context) {
204:            }
205:
206:            public Any eval() {
207:                throw new RuntimeException("Node of type '"
208:                        + getClass().getName() + "' is not a constant");
209:            }
210:
211:            public String toString() {
212:                String s = getClass().getName();
213:                s = s.substring(s.lastIndexOf('.') + 1);
214:                return s;
215:            }
216:
217:            public void compile(ByteCompiler context, int operation) {
218:            }
219:
220:            public void compile(ByteCompiler context, Node child) {
221:            }
222:
223:        }
www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.