[jboss-svn-commits] JBL Code SVN: r20083 - labs/jbossrules/branches/parser-rewrite/drools-compiler/src/main/java/org/drools/lang.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Tue May 20 09:46:16 EDT 2008
Author: porcelli
Date: 2008-05-20 09:46:16 -0400 (Tue, 20 May 2008)
New Revision: 20083
Added:
labs/jbossrules/branches/parser-rewrite/drools-compiler/src/main/java/org/drools/lang/DroolEditorType.java
Modified:
labs/jbossrules/branches/parser-rewrite/drools-compiler/src/main/java/org/drools/lang/DroolsTreeAdaptor.java
Log:
Now the TreeAdaptor sets on every DroolsTree created an editor type: to help editor identify elements.
Added: labs/jbossrules/branches/parser-rewrite/drools-compiler/src/main/java/org/drools/lang/DroolEditorType.java
===================================================================
--- labs/jbossrules/branches/parser-rewrite/drools-compiler/src/main/java/org/drools/lang/DroolEditorType.java (rev 0)
+++ labs/jbossrules/branches/parser-rewrite/drools-compiler/src/main/java/org/drools/lang/DroolEditorType.java 2008-05-20 13:46:16 UTC (rev 20083)
@@ -0,0 +1,14 @@
+package org.drools.lang;
+
+public class DroolEditorType {
+ public static int KEYWORD = 0;
+ public static int CODE_CHUNK = 1;
+ public static int SYMBOL = 2;
+ public static int NUMERIC_CONST = 3;
+ public static int BOOLEAN_CONST = 4;
+ public static int STRING_CONST = 5;
+ public static int NULL_CONST = 6;
+ public static int IDENTIFIER = 7;
+ public static int IDENTIFIER_TYPE = 8;
+ public static int IDENTIFIER_PATTERN = 9;
+}
\ No newline at end of file
Property changes on: labs/jbossrules/branches/parser-rewrite/drools-compiler/src/main/java/org/drools/lang/DroolEditorType.java
___________________________________________________________________
Name: svn:eol-style
+ native
Modified: labs/jbossrules/branches/parser-rewrite/drools-compiler/src/main/java/org/drools/lang/DroolsTreeAdaptor.java
===================================================================
--- labs/jbossrules/branches/parser-rewrite/drools-compiler/src/main/java/org/drools/lang/DroolsTreeAdaptor.java 2008-05-20 13:44:37 UTC (rev 20082)
+++ labs/jbossrules/branches/parser-rewrite/drools-compiler/src/main/java/org/drools/lang/DroolsTreeAdaptor.java 2008-05-20 13:46:16 UTC (rev 20083)
@@ -14,6 +14,103 @@
.getClass().equals(DroolsToken.class))) {
tree.setStartCharOffset(((CommonToken) token).getStartIndex());
tree.setEndCharOffset(((CommonToken) token).getStopIndex());
+
+ if (token.getType() == DRLLexer.END
+ || token.getType() == DRLLexer.THEN
+ || token.getType() == DRLLexer.VK_ACCUMULATE
+ || token.getType() == DRLLexer.VK_ACTION
+ || token.getType() == DRLLexer.VK_ACTIVATION_GROUP
+ || token.getType() == DRLLexer.VK_AGENDA_GROUP
+ || token.getType() == DRLLexer.VK_AND
+ || token.getType() == DRLLexer.VK_ATTRIBUTES
+ || token.getType() == DRLLexer.VK_AUTO_FOCUS
+ || token.getType() == DRLLexer.VK_COLLECT
+ || token.getType() == DRLLexer.VK_CONTAINS
+ || token.getType() == DRLLexer.VK_DATE_EFFECTIVE
+ || token.getType() == DRLLexer.VK_DATE_EXPIRES
+ || token.getType() == DRLLexer.VK_DECLARE
+ || token.getType() == DRLLexer.VK_DIALECT
+ || token.getType() == DRLLexer.VK_DURATION
+ || token.getType() == DRLLexer.VK_ENABLED
+ || token.getType() == DRLLexer.VK_ENTRY_POINT
+ || token.getType() == DRLLexer.VK_EVAL
+ || token.getType() == DRLLexer.VK_EXCLUDES
+ || token.getType() == DRLLexer.VK_EXISTS
+ || token.getType() == DRLLexer.VK_FORALL
+ || token.getType() == DRLLexer.VK_FROM
+ || token.getType() == DRLLexer.VK_FUNCTION
+ || token.getType() == DRLLexer.VK_GLOBAL
+ || token.getType() == DRLLexer.VK_IMPORT
+ || token.getType() == DRLLexer.VK_IN
+ || token.getType() == DRLLexer.VK_INIT
+ || token.getType() == DRLLexer.VK_LOCK_ON_ACTIVE
+ || token.getType() == DRLLexer.VK_MATCHES
+ || token.getType() == DRLLexer.VK_MEMBEROF
+ || token.getType() == DRLLexer.VK_NO_LOOP
+ || token.getType() == DRLLexer.VK_NOT
+ || token.getType() == DRLLexer.VK_OR
+ || token.getType() == DRLLexer.VK_PACKAGE
+ || token.getType() == DRLLexer.VK_QUERY
+ || token.getType() == DRLLexer.VK_RESULT
+ || token.getType() == DRLLexer.VK_REVERSE
+ || token.getType() == DRLLexer.VK_RULE
+ || token.getType() == DRLLexer.VK_RULEFLOW_GROUP
+ || token.getType() == DRLLexer.VK_SALIENCE
+ || token.getType() == DRLLexer.VK_SOUNDSLIKE
+ || token.getType() == DRLLexer.VK_TEMPLATE
+ || token.getType() == DRLLexer.VK_WHEN) {
+ tree.setEditorElementType(DroolEditorType.KEYWORD);
+ } else if (token.getType() == DRLLexer.FLOAT
+ || token.getType() == DRLLexer.INT) {
+ tree.setEditorElementType(DroolEditorType.NUMERIC_CONST);
+ } else if (token.getType() == DRLLexer.STRING) {
+ tree.setEditorElementType(DroolEditorType.STRING_CONST);
+ } else if (token.getType() == DRLLexer.BOOL) {
+ tree.setEditorElementType(DroolEditorType.BOOLEAN_CONST);
+ } else if (token.getType() == DRLLexer.NULL) {
+ tree.setEditorElementType(DroolEditorType.NULL_CONST);
+ } else if (token.getType() == DRLLexer.VT_SQUARE_CHUNK
+ || token.getType() == DRLLexer.VT_PAREN_CHUNK
+ || token.getType() == DRLLexer.VT_CURLY_CHUNK
+ || token.getType() == DRLLexer.VT_RHS_CHUNK) {
+ tree.setEditorElementType(DroolEditorType.CODE_CHUNK);
+ } else if (token.getType() == DRLLexer.MISC
+ || token.getType() == DRLLexer.DOUBLE_PIPE
+ || token.getType() == DRLLexer.DOUBLE_AMPER
+ || token.getType() == DRLLexer.DOT
+ || token.getType() == DRLLexer.COMMA
+ || token.getType() == DRLLexer.RIGHT_CURLY
+ || token.getType() == DRLLexer.LEFT_CURLY
+ || token.getType() == DRLLexer.RIGHT_SQUARE
+ || token.getType() == DRLLexer.LEFT_SQUARE
+ || token.getType() == DRLLexer.RIGHT_PAREN
+ || token.getType() == DRLLexer.LEFT_PAREN
+ || token.getType() == DRLLexer.ARROW
+ || token.getType() == DRLLexer.LESS_EQUAL
+ || token.getType() == DRLLexer.LESS
+ || token.getType() == DRLLexer.GREATER_EQUAL
+ || token.getType() == DRLLexer.GREATER
+ || token.getType() == DRLLexer.NOT_EQUAL
+ || token.getType() == DRLLexer.EQUAL
+ || token.getType() == DRLLexer.COLON
+ || token.getType() == DRLLexer.SEMICOLON) {
+ tree.setEditorElementType(DroolEditorType.SYMBOL);
+ } else if (token.getType() == DRLLexer.ID
+ || token.getType() == DRLLexer.DOT_STAR
+ || token.getType() == DRLLexer.VT_GLOBAL_ID
+ || token.getType() == DRLLexer.VT_FUNCTION_ID
+ || token.getType() == DRLLexer.VT_QUERY_ID
+ || token.getType() == DRLLexer.VT_TEMPLATE_ID
+ || token.getType() == DRLLexer.VT_SLOT_ID
+ || token.getType() == DRLLexer.VT_RULE_ID
+ || token.getType() == DRLLexer.VT_ENTRYPOINT_ID) {
+ tree.setEditorElementType(DroolEditorType.IDENTIFIER);
+ } else if (token.getType() == DRLLexer.VT_DATA_TYPE) {
+ tree.setEditorElementType(DroolEditorType.IDENTIFIER_TYPE);
+ } else if (token.getType() == DRLLexer.VT_PATTERN_TYPE) {
+ tree.setEditorElementType(DroolEditorType.IDENTIFIER_PATTERN);
+ }
+
}
return tree;
}
@@ -45,11 +142,16 @@
}
public Object create(int tokenType, Token fromToken, String text) {
- if (fromToken instanceof DroolsToken){
- DroolsTree result = (DroolsTree) super.create(tokenType, fromToken, text);
- result.setStartCharOffset(((DroolsToken) fromToken).getStartIndex());
- result.setEndCharOffset(result.getStartCharOffset() + text.length());
- return result;
+ if (fromToken instanceof DroolsToken) {
+ DroolsTree result = (DroolsTree) super.create(tokenType, fromToken,
+ text);
+ result
+ .setStartCharOffset(((DroolsToken) fromToken)
+ .getStartIndex());
+ result
+ .setEndCharOffset(result.getStartCharOffset()
+ + text.length());
+ return result;
}
return super.create(tokenType, fromToken, text);
}
More information about the jboss-svn-commits
mailing list