001: /*
002: * Copyright (C) 2005 - 2008 JasperSoft Corporation. All rights reserved.
003: * http://www.jaspersoft.com.
004: *
005: * Unless you have purchased a commercial license agreement from JasperSoft,
006: * the following license terms apply:
007: *
008: * This program is free software; you can redistribute it and/or modify
009: * it under the terms of the GNU General Public License version 2 as published by
010: * the Free Software Foundation.
011: *
012: * This program is distributed WITHOUT ANY WARRANTY; and without the
013: * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
014: * See the GNU General Public License for more details.
015: *
016: * You should have received a copy of the GNU General Public License
017: * along with this program; if not, see http://www.gnu.org/licenses/gpl.txt
018: * or write to:
019: *
020: * Free Software Foundation, Inc.,
021: * 59 Temple Place - Suite 330,
022: * Boston, MA USA 02111-1307
023: *
024: *
025: *
026: *
027: * PLSQLTokenMarker.java
028: *
029: */
030:
031: package org.syntax.jedit.tokenmarker;
032:
033: import org.syntax.jedit.*;
034: import javax.swing.text.Segment;
035:
036: /**
037: * Oracle PL-SQL token marker.
038: *
039: * @author oliver henning
040: * @version $Id: PLSQLTokenMarker.java 1167 2008-01-15 18:49:05Z gtoffoli $
041: */
042: public class PLSQLTokenMarker extends SQLTokenMarker {
043: // public members
044: public PLSQLTokenMarker() {
045: super (getKeywordMap(), true);
046: }
047:
048: public static KeywordMap getKeywordMap() {
049: if (plsqlKeywords == null) {
050: plsqlKeywords = new KeywordMap(true);
051: addKeywords();
052: addDataTypes();
053: addSystemFunctions();
054: addOperators();
055: addSystemStoredProcedures();
056: addSystemTables();
057: }
058: return plsqlKeywords;
059: }
060:
061: private static void addKeywords() {
062: plsqlKeywords.add("ABORT", Token.KEYWORD1);
063: plsqlKeywords.add("ACCESS", Token.KEYWORD1);
064: plsqlKeywords.add("ADD", Token.KEYWORD1);
065: plsqlKeywords.add("ALTER", Token.KEYWORD1);
066: plsqlKeywords.add("ARRAY", Token.KEYWORD1);
067: plsqlKeywords.add("ARRAY_LEN", Token.KEYWORD1);
068: plsqlKeywords.add("AS", Token.KEYWORD1);
069: plsqlKeywords.add("ASC", Token.KEYWORD1);
070: plsqlKeywords.add("ASSERT", Token.KEYWORD1);
071: plsqlKeywords.add("ASSIGN", Token.KEYWORD1);
072: plsqlKeywords.add("AT", Token.KEYWORD1);
073: plsqlKeywords.add("AUDIT", Token.KEYWORD1);
074: plsqlKeywords.add("AUTHORIZATION", Token.KEYWORD1);
075: plsqlKeywords.add("AVG", Token.KEYWORD1);
076: plsqlKeywords.add("BASE_TABLE", Token.KEYWORD1);
077: plsqlKeywords.add("BEGIN", Token.KEYWORD1);
078: plsqlKeywords.add("BODY", Token.KEYWORD1);
079: plsqlKeywords.add("CASE", Token.KEYWORD1);
080: plsqlKeywords.add("CHAR", Token.KEYWORD1);
081: plsqlKeywords.add("CHAR_BASE", Token.KEYWORD1);
082: plsqlKeywords.add("CHECK", Token.KEYWORD1);
083: plsqlKeywords.add("CLOSE", Token.KEYWORD1);
084: plsqlKeywords.add("CLUSTER", Token.KEYWORD1);
085: plsqlKeywords.add("CLUSTERS", Token.KEYWORD1);
086: plsqlKeywords.add("COLAUTH", Token.KEYWORD1);
087: plsqlKeywords.add("COLUMN", Token.KEYWORD1);
088: plsqlKeywords.add("COMMENT", Token.KEYWORD1);
089: plsqlKeywords.add("COMMIT", Token.KEYWORD1);
090: plsqlKeywords.add("COMPRESS", Token.KEYWORD1);
091: plsqlKeywords.add("CONSTANT", Token.KEYWORD1);
092: plsqlKeywords.add("CONSTRAINT", Token.KEYWORD1);
093: plsqlKeywords.add("COUNT", Token.KEYWORD1);
094: plsqlKeywords.add("CREATE", Token.KEYWORD1);
095: plsqlKeywords.add("CURRENT", Token.KEYWORD1);
096: plsqlKeywords.add("CURRVAL", Token.KEYWORD1);
097: plsqlKeywords.add("CURSOR", Token.KEYWORD1);
098: plsqlKeywords.add("DATABASE", Token.KEYWORD1);
099: plsqlKeywords.add("DATA_BASE", Token.KEYWORD1);
100: plsqlKeywords.add("DATE", Token.KEYWORD1);
101: plsqlKeywords.add("DBA", Token.KEYWORD1);
102: plsqlKeywords.add("DEBUGOFF", Token.KEYWORD1);
103: plsqlKeywords.add("DEBUGON", Token.KEYWORD1);
104: plsqlKeywords.add("DECLARE", Token.KEYWORD1);
105: plsqlKeywords.add("DEFAULT", Token.KEYWORD1);
106: plsqlKeywords.add("DEFINITION", Token.KEYWORD1);
107: plsqlKeywords.add("DELAY", Token.KEYWORD1);
108: plsqlKeywords.add("DELETE", Token.KEYWORD1);
109: plsqlKeywords.add("DESC", Token.KEYWORD1);
110: plsqlKeywords.add("DIGITS", Token.KEYWORD1);
111: plsqlKeywords.add("DISPOSE", Token.KEYWORD1);
112: plsqlKeywords.add("DISTINCT", Token.KEYWORD1);
113: plsqlKeywords.add("DO", Token.KEYWORD1);
114: plsqlKeywords.add("DROP", Token.KEYWORD1);
115: plsqlKeywords.add("DUMP", Token.KEYWORD1);
116: plsqlKeywords.add("ELSE", Token.KEYWORD1);
117: plsqlKeywords.add("ELSIF", Token.KEYWORD1);
118: plsqlKeywords.add("END", Token.KEYWORD1);
119: plsqlKeywords.add("ENTRY", Token.KEYWORD1);
120: plsqlKeywords.add("EXCEPTION", Token.KEYWORD1);
121: plsqlKeywords.add("EXCEPTION_INIT", Token.KEYWORD1);
122: plsqlKeywords.add("EXCLUSIVE", Token.KEYWORD1);
123: plsqlKeywords.add("EXIT", Token.KEYWORD1);
124: plsqlKeywords.add("FALSE", Token.KEYWORD1);
125: plsqlKeywords.add("FETCH", Token.KEYWORD1);
126: plsqlKeywords.add("FILE", Token.KEYWORD1);
127: plsqlKeywords.add("FOR", Token.KEYWORD1);
128: plsqlKeywords.add("FORM", Token.KEYWORD1);
129: plsqlKeywords.add("FROM", Token.KEYWORD1);
130: plsqlKeywords.add("FUNCTION", Token.KEYWORD1);
131: plsqlKeywords.add("GENERIC", Token.KEYWORD1);
132: plsqlKeywords.add("GOTO", Token.KEYWORD1);
133: plsqlKeywords.add("GRANT", Token.KEYWORD1);
134: plsqlKeywords.add("GREATEST", Token.KEYWORD1);
135: plsqlKeywords.add("GROUP", Token.KEYWORD1);
136: plsqlKeywords.add("HAVING", Token.KEYWORD1);
137: plsqlKeywords.add("IDENTIFIED", Token.KEYWORD1);
138: plsqlKeywords.add("IDENTITYCOL", Token.KEYWORD1);
139: plsqlKeywords.add("IF", Token.KEYWORD1);
140: plsqlKeywords.add("IMMEDIATE", Token.KEYWORD1);
141: plsqlKeywords.add("INCREMENT", Token.KEYWORD1);
142: plsqlKeywords.add("INDEX", Token.KEYWORD1);
143: plsqlKeywords.add("INDEXES", Token.KEYWORD1);
144: plsqlKeywords.add("INDICATOR", Token.KEYWORD1);
145: plsqlKeywords.add("INITIAL", Token.KEYWORD1);
146: plsqlKeywords.add("INSERT", Token.KEYWORD1);
147: plsqlKeywords.add("INTERFACE", Token.KEYWORD1);
148: plsqlKeywords.add("INTO", Token.KEYWORD1);
149: plsqlKeywords.add("IS", Token.KEYWORD1);
150: plsqlKeywords.add("LEAST", Token.KEYWORD1);
151: plsqlKeywords.add("LEVEL", Token.KEYWORD1);
152: plsqlKeywords.add("LIMITED", Token.KEYWORD1);
153: plsqlKeywords.add("LOCK", Token.KEYWORD1);
154: plsqlKeywords.add("LONG", Token.KEYWORD1);
155: plsqlKeywords.add("LOOP", Token.KEYWORD1);
156: plsqlKeywords.add("MAX", Token.KEYWORD1);
157: plsqlKeywords.add("MAXEXTENTS", Token.KEYWORD1);
158: plsqlKeywords.add("MIN", Token.KEYWORD1);
159: plsqlKeywords.add("MINUS", Token.KEYWORD1);
160: plsqlKeywords.add("MLSLABEL", Token.KEYWORD1);
161: plsqlKeywords.add("MOD", Token.KEYWORD1);
162: plsqlKeywords.add("MORE", Token.KEYWORD1);
163: plsqlKeywords.add("NEW", Token.KEYWORD1);
164: plsqlKeywords.add("NEXTVAL", Token.KEYWORD1);
165: plsqlKeywords.add("NOAUDIT", Token.KEYWORD1);
166: plsqlKeywords.add("NOCOMPRESS", Token.KEYWORD1);
167: plsqlKeywords.add("NOWAIT", Token.KEYWORD1);
168: plsqlKeywords.add("NULL", Token.KEYWORD1);
169: plsqlKeywords.add("NUMBER_BASE", Token.KEYWORD1);
170: plsqlKeywords.add("OF", Token.KEYWORD1);
171: plsqlKeywords.add("OFFLINE", Token.KEYWORD1);
172: plsqlKeywords.add("ON", Token.KEYWORD1);
173: plsqlKeywords.add("OFF", Token.KEYWORD1);
174: plsqlKeywords.add("ONLINE", Token.KEYWORD1);
175: plsqlKeywords.add("OPEN", Token.KEYWORD1);
176: plsqlKeywords.add("OPTION", Token.KEYWORD1);
177: plsqlKeywords.add("ORDER", Token.KEYWORD1);
178: plsqlKeywords.add("OTHERS", Token.KEYWORD1);
179: plsqlKeywords.add("OUT", Token.KEYWORD1);
180: plsqlKeywords.add("PACKAGE", Token.KEYWORD1);
181: plsqlKeywords.add("PARTITION", Token.KEYWORD1);
182: plsqlKeywords.add("PCTFREE", Token.KEYWORD1);
183: plsqlKeywords.add("PRAGMA", Token.KEYWORD1);
184: plsqlKeywords.add("PRIVATE", Token.KEYWORD1);
185: plsqlKeywords.add("PRIVILEGES", Token.KEYWORD1);
186: plsqlKeywords.add("PROCEDURE", Token.KEYWORD1);
187: plsqlKeywords.add("PUBLIC", Token.KEYWORD1);
188: plsqlKeywords.add("QUOTED_IDENTIFIER", Token.KEYWORD1);
189: plsqlKeywords.add("RAISE", Token.KEYWORD1);
190: plsqlKeywords.add("RANGE", Token.KEYWORD1);
191: plsqlKeywords.add("RECORD", Token.KEYWORD1);
192: plsqlKeywords.add("REF", Token.KEYWORD1);
193: plsqlKeywords.add("RELEASE", Token.KEYWORD1);
194: plsqlKeywords.add("REMR", Token.KEYWORD1);
195: plsqlKeywords.add("RENAME", Token.KEYWORD1);
196: plsqlKeywords.add("RESOURCE", Token.KEYWORD1);
197: plsqlKeywords.add("RETURN", Token.KEYWORD1);
198: plsqlKeywords.add("REVERSE", Token.KEYWORD1);
199: plsqlKeywords.add("REVOKE", Token.KEYWORD1);
200: plsqlKeywords.add("ROLLBACK", Token.KEYWORD1);
201: plsqlKeywords.add("ROW", Token.KEYWORD1);
202: plsqlKeywords.add("ROWLABEL", Token.KEYWORD1);
203: plsqlKeywords.add("ROWNUM", Token.KEYWORD1);
204: plsqlKeywords.add("ROWS", Token.KEYWORD1);
205: plsqlKeywords.add("ROWTYPE", Token.KEYWORD1);
206: plsqlKeywords.add("RUN", Token.KEYWORD1);
207: plsqlKeywords.add("SAVEPOINT", Token.KEYWORD1);
208: plsqlKeywords.add("SCHEMA", Token.KEYWORD1);
209: plsqlKeywords.add("SELECT", Token.KEYWORD1);
210: plsqlKeywords.add("SEPERATE", Token.KEYWORD1);
211: plsqlKeywords.add("SESSION", Token.KEYWORD1);
212: plsqlKeywords.add("SET", Token.KEYWORD1);
213: plsqlKeywords.add("SHARE", Token.KEYWORD1);
214: plsqlKeywords.add("SPACE", Token.KEYWORD1);
215: plsqlKeywords.add("SQL", Token.KEYWORD1);
216: plsqlKeywords.add("SQLCODE", Token.KEYWORD1);
217: plsqlKeywords.add("SQLERRM", Token.KEYWORD1);
218: plsqlKeywords.add("STATEMENT", Token.KEYWORD1);
219: plsqlKeywords.add("STDDEV", Token.KEYWORD1);
220: plsqlKeywords.add("SUBTYPE", Token.KEYWORD1);
221: plsqlKeywords.add("SUCCESSFULL", Token.KEYWORD1);
222: plsqlKeywords.add("SUM", Token.KEYWORD1);
223: plsqlKeywords.add("SYNONYM", Token.KEYWORD1);
224: plsqlKeywords.add("SYSDATE", Token.KEYWORD1);
225: plsqlKeywords.add("TABAUTH", Token.KEYWORD1);
226: plsqlKeywords.add("TABLE", Token.KEYWORD1);
227: plsqlKeywords.add("TABLES", Token.KEYWORD1);
228: plsqlKeywords.add("TASK", Token.KEYWORD1);
229: plsqlKeywords.add("TERMINATE", Token.KEYWORD1);
230: plsqlKeywords.add("THEN", Token.KEYWORD1);
231: plsqlKeywords.add("TO", Token.KEYWORD1);
232: plsqlKeywords.add("TRIGGER", Token.KEYWORD1);
233: plsqlKeywords.add("TRUE", Token.KEYWORD1);
234: plsqlKeywords.add("TYPE", Token.KEYWORD1);
235: plsqlKeywords.add("UID", Token.KEYWORD1);
236: plsqlKeywords.add("UNION", Token.KEYWORD1);
237: plsqlKeywords.add("UNIQUE", Token.KEYWORD1);
238: plsqlKeywords.add("UPDATE", Token.KEYWORD1);
239: plsqlKeywords.add("UPDATETEXT", Token.KEYWORD1);
240: plsqlKeywords.add("USE", Token.KEYWORD1);
241: plsqlKeywords.add("USER", Token.KEYWORD1);
242: plsqlKeywords.add("USING", Token.KEYWORD1);
243: plsqlKeywords.add("VALIDATE", Token.KEYWORD1);
244: plsqlKeywords.add("VALUES", Token.KEYWORD1);
245: plsqlKeywords.add("VARIANCE", Token.KEYWORD1);
246: plsqlKeywords.add("VIEW", Token.KEYWORD1);
247: plsqlKeywords.add("VIEWS", Token.KEYWORD1);
248: plsqlKeywords.add("WHEN", Token.KEYWORD1);
249: plsqlKeywords.add("WHENEVER", Token.KEYWORD1);
250: plsqlKeywords.add("WHERE", Token.KEYWORD1);
251: plsqlKeywords.add("WHILE", Token.KEYWORD1);
252: plsqlKeywords.add("WITH", Token.KEYWORD1);
253: plsqlKeywords.add("WORK", Token.KEYWORD1);
254: plsqlKeywords.add("WRITE", Token.KEYWORD1);
255: plsqlKeywords.add("XOR", Token.KEYWORD1);
256:
257: plsqlKeywords.add("ABS", Token.KEYWORD2);
258: plsqlKeywords.add("ACOS", Token.KEYWORD2);
259: plsqlKeywords.add("ADD_MONTHS", Token.KEYWORD2);
260: plsqlKeywords.add("ASCII", Token.KEYWORD2);
261: plsqlKeywords.add("ASIN", Token.KEYWORD2);
262: plsqlKeywords.add("ATAN", Token.KEYWORD2);
263: plsqlKeywords.add("ATAN2", Token.KEYWORD2);
264: plsqlKeywords.add("CEIL", Token.KEYWORD2);
265: plsqlKeywords.add("CHARTOROWID", Token.KEYWORD2);
266: plsqlKeywords.add("CHR", Token.KEYWORD2);
267: plsqlKeywords.add("CONCAT", Token.KEYWORD2);
268: plsqlKeywords.add("CONVERT", Token.KEYWORD2);
269: plsqlKeywords.add("COS", Token.KEYWORD2);
270: plsqlKeywords.add("COSH", Token.KEYWORD2);
271: plsqlKeywords.add("DECODE", Token.KEYWORD2);
272: plsqlKeywords.add("DEFINE", Token.KEYWORD2);
273: plsqlKeywords.add("FLOOR", Token.KEYWORD2);
274: plsqlKeywords.add("HEXTORAW", Token.KEYWORD2);
275: plsqlKeywords.add("INITCAP", Token.KEYWORD2);
276: plsqlKeywords.add("INSTR", Token.KEYWORD2);
277: plsqlKeywords.add("INSTRB", Token.KEYWORD2);
278: plsqlKeywords.add("LAST_DAY", Token.KEYWORD2);
279: plsqlKeywords.add("LENGTH", Token.KEYWORD2);
280: plsqlKeywords.add("LENGTHB", Token.KEYWORD2);
281: plsqlKeywords.add("LN", Token.KEYWORD2);
282: plsqlKeywords.add("LOG", Token.KEYWORD2);
283: plsqlKeywords.add("LOWER", Token.KEYWORD2);
284: plsqlKeywords.add("LPAD", Token.KEYWORD2);
285: plsqlKeywords.add("LTRIM", Token.KEYWORD2);
286: plsqlKeywords.add("MOD", Token.KEYWORD2);
287: plsqlKeywords.add("MONTHS_BETWEEN", Token.KEYWORD2);
288: plsqlKeywords.add("NEW_TIME", Token.KEYWORD2);
289: plsqlKeywords.add("NEXT_DAY", Token.KEYWORD2);
290: plsqlKeywords.add("NLSSORT", Token.KEYWORD2);
291: plsqlKeywords.add("NSL_INITCAP", Token.KEYWORD2);
292: plsqlKeywords.add("NLS_LOWER", Token.KEYWORD2);
293: plsqlKeywords.add("NLS_UPPER", Token.KEYWORD2);
294: plsqlKeywords.add("NVL", Token.KEYWORD2);
295: plsqlKeywords.add("POWER", Token.KEYWORD2);
296: plsqlKeywords.add("RAWTOHEX", Token.KEYWORD2);
297: plsqlKeywords.add("REPLACE", Token.KEYWORD2);
298: plsqlKeywords.add("ROUND", Token.KEYWORD2);
299: plsqlKeywords.add("ROWIDTOCHAR", Token.KEYWORD2);
300: plsqlKeywords.add("RPAD", Token.KEYWORD2);
301: plsqlKeywords.add("RTRIM", Token.KEYWORD2);
302: plsqlKeywords.add("SIGN", Token.KEYWORD2);
303: plsqlKeywords.add("SOUNDEX", Token.KEYWORD2);
304: plsqlKeywords.add("SIN", Token.KEYWORD2);
305: plsqlKeywords.add("SINH", Token.KEYWORD2);
306: plsqlKeywords.add("SQRT", Token.KEYWORD2);
307: plsqlKeywords.add("SUBSTR", Token.KEYWORD2);
308: plsqlKeywords.add("SUBSTRB", Token.KEYWORD2);
309: plsqlKeywords.add("TAN", Token.KEYWORD2);
310: plsqlKeywords.add("TANH", Token.KEYWORD2);
311: plsqlKeywords.add("TO_CHAR", Token.KEYWORD2);
312: plsqlKeywords.add("TO_DATE", Token.KEYWORD2);
313: plsqlKeywords.add("TO_MULTIBYTE", Token.KEYWORD2);
314: plsqlKeywords.add("TO_NUMBER", Token.KEYWORD2);
315: plsqlKeywords.add("TO_SINGLE_BYTE", Token.KEYWORD2);
316: plsqlKeywords.add("TRANSLATE", Token.KEYWORD2);
317: plsqlKeywords.add("TRUNC", Token.KEYWORD2);
318: plsqlKeywords.add("UPPER", Token.KEYWORD2);
319:
320: plsqlKeywords.add("VERIFY", Token.KEYWORD1);
321: plsqlKeywords.add("SERVEROUTPUT", Token.KEYWORD1);
322: plsqlKeywords.add("PAGESIZE", Token.KEYWORD1);
323: plsqlKeywords.add("LINESIZE", Token.KEYWORD1);
324: plsqlKeywords.add("ARRAYSIZE", Token.KEYWORD1);
325: plsqlKeywords.add("DBMS_OUTPUT", Token.KEYWORD1);
326: plsqlKeywords.add("PUT_LINE", Token.KEYWORD1);
327: plsqlKeywords.add("ENABLE", Token.KEYWORD1);
328:
329: }
330:
331: private static void addDataTypes() {
332:
333: plsqlKeywords.add("binary", Token.KEYWORD1);
334: plsqlKeywords.add("bit", Token.KEYWORD1);
335: plsqlKeywords.add("blob", Token.KEYWORD1);
336: plsqlKeywords.add("boolean", Token.KEYWORD1);
337: plsqlKeywords.add("char", Token.KEYWORD1);
338: plsqlKeywords.add("character", Token.KEYWORD1);
339: plsqlKeywords.add("DATE", Token.KEYWORD1);
340: plsqlKeywords.add("datetime", Token.KEYWORD1);
341: plsqlKeywords.add("DEC", Token.KEYWORD1);
342: plsqlKeywords.add("decimal", Token.KEYWORD1);
343: plsqlKeywords.add("DOUBLE PRECISION", Token.KEYWORD1);
344: plsqlKeywords.add("float", Token.KEYWORD1);
345: plsqlKeywords.add("image", Token.KEYWORD1);
346: plsqlKeywords.add("int", Token.KEYWORD1);
347: plsqlKeywords.add("integer", Token.KEYWORD1);
348: plsqlKeywords.add("money", Token.KEYWORD1);
349: plsqlKeywords.add("name", Token.KEYWORD1);
350: plsqlKeywords.add("NATURAL", Token.KEYWORD1);
351: plsqlKeywords.add("NATURALN", Token.KEYWORD1);
352: plsqlKeywords.add("NUMBER", Token.KEYWORD1);
353: plsqlKeywords.add("numeric", Token.KEYWORD1);
354: plsqlKeywords.add("nchar", Token.KEYWORD1);
355: plsqlKeywords.add("nvarchar", Token.KEYWORD1);
356: plsqlKeywords.add("ntext", Token.KEYWORD1);
357: plsqlKeywords.add("pls_integer", Token.KEYWORD1);
358: plsqlKeywords.add("POSITIVE", Token.KEYWORD1);
359: plsqlKeywords.add("POSITIVEN", Token.KEYWORD1);
360: plsqlKeywords.add("RAW", Token.KEYWORD1);
361: plsqlKeywords.add("real", Token.KEYWORD1);
362: plsqlKeywords.add("ROWID", Token.KEYWORD1);
363: plsqlKeywords.add("SIGNTYPE", Token.KEYWORD1);
364: plsqlKeywords.add("smalldatetime", Token.KEYWORD1);
365: plsqlKeywords.add("smallint", Token.KEYWORD1);
366: plsqlKeywords.add("smallmoney", Token.KEYWORD1);
367: plsqlKeywords.add("text", Token.KEYWORD1);
368: plsqlKeywords.add("timestamp", Token.KEYWORD1);
369: plsqlKeywords.add("tinyint", Token.KEYWORD1);
370: plsqlKeywords.add("uniqueidentifier", Token.KEYWORD1);
371: plsqlKeywords.add("UROWID", Token.KEYWORD1);
372: plsqlKeywords.add("varbinary", Token.KEYWORD1);
373: plsqlKeywords.add("varchar", Token.KEYWORD1);
374: plsqlKeywords.add("varchar2", Token.KEYWORD1);
375:
376: }
377:
378: private static void addSystemFunctions() {
379: plsqlKeywords.add("SYSDATE", Token.KEYWORD2);
380:
381: }
382:
383: private static void addOperators() {
384: plsqlKeywords.add("ALL", Token.OPERATOR);
385: plsqlKeywords.add("AND", Token.OPERATOR);
386: plsqlKeywords.add("ANY", Token.OPERATOR);
387: plsqlKeywords.add("BETWEEN", Token.OPERATOR);
388: plsqlKeywords.add("BY", Token.OPERATOR);
389: plsqlKeywords.add("CONNECT", Token.OPERATOR);
390: plsqlKeywords.add("EXISTS", Token.OPERATOR);
391: plsqlKeywords.add("IN", Token.OPERATOR);
392: plsqlKeywords.add("INTERSECT", Token.OPERATOR);
393: plsqlKeywords.add("LIKE", Token.OPERATOR);
394: plsqlKeywords.add("NOT", Token.OPERATOR);
395: plsqlKeywords.add("NULL", Token.OPERATOR);
396: plsqlKeywords.add("OR", Token.OPERATOR);
397: plsqlKeywords.add("START", Token.OPERATOR);
398: plsqlKeywords.add("UNION", Token.OPERATOR);
399: plsqlKeywords.add("WITH", Token.OPERATOR);
400:
401: }
402:
403: private static void addSystemStoredProcedures() {
404: plsqlKeywords.add("sp_add_agent_parameter", Token.KEYWORD3);
405: }
406:
407: private static void addSystemTables() {
408: plsqlKeywords.add("backupfile", Token.KEYWORD3);
409: }
410:
411: private static KeywordMap plsqlKeywords;
412: }
|