[jboss-svn-commits] JBL Code SVN: r13535 - in labs/jbossrules/trunk: drools-compiler/src/main/resources/org/drools/semantics/java/parser and 1 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Sun Jul 15 10:02:39 EDT 2007
Author: tirelli
Date: 2007-07-15 10:02:38 -0400 (Sun, 15 Jul 2007)
New Revision: 13535
Modified:
labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/rule/builder/dialect/java/parser/JavaLexer.java
labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/rule/builder/dialect/java/parser/JavaParser.java
labs/jbossrules/trunk/drools-compiler/src/main/resources/org/drools/semantics/java/parser/Java.g
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/ClassFieldExtractorFactory.java
Log:
JBRULES-1001: fixing NPE when java code blocks contains function calls
Modified: labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/rule/builder/dialect/java/parser/JavaLexer.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/rule/builder/dialect/java/parser/JavaLexer.java 2007-07-15 10:44:39 UTC (rev 13534)
+++ labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/rule/builder/dialect/java/parser/JavaLexer.java 2007-07-15 14:02:38 UTC (rev 13535)
@@ -1,4 +1,4 @@
-// $ANTLR 3.0 /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/semantics/java/parser/Java.g 2007-07-01 14:08:52
+// $ANTLR 3.0 /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/semantics/java/parser/Java.g 2007-07-15 10:51:14
package org.drools.rule.builder.dialect.java.parser;
Modified: labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/rule/builder/dialect/java/parser/JavaParser.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/rule/builder/dialect/java/parser/JavaParser.java 2007-07-15 10:44:39 UTC (rev 13534)
+++ labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/rule/builder/dialect/java/parser/JavaParser.java 2007-07-15 14:02:38 UTC (rev 13535)
@@ -1,4 +1,4 @@
-// $ANTLR 3.0 /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/semantics/java/parser/Java.g 2007-07-01 14:08:51
+// $ANTLR 3.0 /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/semantics/java/parser/Java.g 2007-07-15 10:51:13
package org.drools.rule.builder.dialect.java.parser;
import java.util.Iterator;
@@ -11745,9 +11745,9 @@
i=(Token)input.LT(1);
match(input,Identifier,FOLLOW_Identifier_in_primary3793); if (failed) return ;
if ( backtracking==0 ) {
- identifiers.add( i.getText() );
+ if( ! "(".equals( input.LT(1) == null ? "" : input.LT(1).getText() ) ) identifiers.add( i.getText() );
}
- // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/semantics/java/parser/Java.g:860:55: ( '.' Identifier )*
+ // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/semantics/java/parser/Java.g:860:126: ( '.' Identifier )*
loop153:
do {
int alt153=2;
@@ -11772,7 +11772,7 @@
switch (alt153) {
case 1 :
- // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/semantics/java/parser/Java.g:860:56: '.' Identifier
+ // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/semantics/java/parser/Java.g:860:127: '.' Identifier
{
match(input,28,FOLLOW_28_in_primary3798); if (failed) return ;
match(input,Identifier,FOLLOW_Identifier_in_primary3800); if (failed) return ;
@@ -11785,7 +11785,7 @@
}
} while (true);
- // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/semantics/java/parser/Java.g:860:73: ( identifierSuffix )?
+ // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/semantics/java/parser/Java.g:860:144: ( identifierSuffix )?
int alt154=2;
switch ( input.LA(1) ) {
case 41:
@@ -12039,7 +12039,7 @@
switch (alt154) {
case 1 :
- // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/semantics/java/parser/Java.g:860:74: identifierSuffix
+ // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/semantics/java/parser/Java.g:860:145: identifierSuffix
{
pushFollow(FOLLOW_identifierSuffix_in_primary3805);
identifierSuffix();
@@ -14192,8 +14192,8 @@
// $ANTLR start synpred238
public final void synpred238_fragment() throws RecognitionException {
- // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/semantics/java/parser/Java.g:860:56: ( '.' Identifier )
- // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/semantics/java/parser/Java.g:860:56: '.' Identifier
+ // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/semantics/java/parser/Java.g:860:127: ( '.' Identifier )
+ // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/semantics/java/parser/Java.g:860:127: '.' Identifier
{
match(input,28,FOLLOW_28_in_synpred2383798); if (failed) return ;
match(input,Identifier,FOLLOW_Identifier_in_synpred2383800); if (failed) return ;
@@ -14204,8 +14204,8 @@
// $ANTLR start synpred239
public final void synpred239_fragment() throws RecognitionException {
- // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/semantics/java/parser/Java.g:860:74: ( identifierSuffix )
- // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/semantics/java/parser/Java.g:860:74: identifierSuffix
+ // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/semantics/java/parser/Java.g:860:145: ( identifierSuffix )
+ // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/semantics/java/parser/Java.g:860:145: identifierSuffix
{
pushFollow(FOLLOW_identifierSuffix_in_synpred2393805);
identifierSuffix();
Modified: labs/jbossrules/trunk/drools-compiler/src/main/resources/org/drools/semantics/java/parser/Java.g
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/main/resources/org/drools/semantics/java/parser/Java.g 2007-07-15 10:44:39 UTC (rev 13534)
+++ labs/jbossrules/trunk/drools-compiler/src/main/resources/org/drools/semantics/java/parser/Java.g 2007-07-15 14:02:38 UTC (rev 13535)
@@ -857,7 +857,7 @@
| 'super' superSuffix
| literal
| 'new' creator
- | i=Identifier { identifiers.add( $i.text ); } ('.' Identifier)* (identifierSuffix)?
+ | i=Identifier { if( ! "(".equals( input.LT(1) == null ? "" : input.LT(1).getText() ) ) identifiers.add( $i.text ); } ('.' Identifier)* (identifierSuffix)?
| primitiveType ('[' ']')* '.' 'class'
| 'void' '.' 'class'
;
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/ClassFieldExtractorFactory.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/ClassFieldExtractorFactory.java 2007-07-15 10:44:39 UTC (rev 13534)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/ClassFieldExtractorFactory.java 2007-07-15 14:02:38 UTC (rev 13535)
@@ -123,7 +123,7 @@
return (BaseClassFieldExtractor) newClass.getConstructors()[0].newInstance( params );
}
} catch ( final Exception e ) {
- System.out.println( e );
+ //e.printStackTrace();
throw new RuntimeDroolsException( e );
}
}
More information about the jboss-svn-commits
mailing list