[jboss-svn-commits] JBL Code SVN: r8427 - labs/jbossrules/trunk/drools-compiler/src/main/resources/org/drools/lang
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Tue Dec 19 19:33:08 EST 2006
Author: tirelli
Date: 2006-12-19 19:33:05 -0500 (Tue, 19 Dec 2006)
New Revision: 8427
Modified:
labs/jbossrules/trunk/drools-compiler/src/main/resources/org/drools/lang/DRL.g
Log:
Fixing new line problem in function
Modified: labs/jbossrules/trunk/drools-compiler/src/main/resources/org/drools/lang/DRL.g
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/main/resources/org/drools/lang/DRL.g 2006-12-20 00:32:06 UTC (rev 8426)
+++ labs/jbossrules/trunk/drools-compiler/src/main/resources/org/drools/lang/DRL.g 2006-12-20 00:33:05 UTC (rev 8427)
@@ -382,12 +382,10 @@
)*
)?
')'
- body=CURLY_CHUNK
+ body=curly_chunk
{
//strip out '{','}'
- String bodys = body.getText();
- bodys = bodys.substring(1,bodys.length()-1);
- f.setText( bodys );
+ f.setText( body.substring( 1, body.length()-1 ) );
packageDescr.addFunction( f );
}
@@ -1101,6 +1099,45 @@
}
;
+curly_chunk returns [String text]
+ @init {
+ StringBuffer buf = null;
+ Integer channel = null;
+ }
+ :
+ loc=LEFT_CURLY
+ {
+ channel = ((SwitchingCommonTokenStream)input).getTokenTypeChannel( WS );
+ ((SwitchingCommonTokenStream)input).setTokenTypeChannel( WS, Token.DEFAULT_CHANNEL );
+ buf = new StringBuffer();
+
+ buf.append( loc.getText() );
+ }
+ (
+ ~(LEFT_CURLY|RIGHT_CURLY)
+ {
+ buf.append( input.LT(-1).getText() );
+ }
+ |
+ chunk=curly_chunk
+ {
+ buf.append( chunk );
+ }
+ )*
+ {
+ if( channel != null ) {
+ ((SwitchingCommonTokenStream)input).setTokenTypeChannel(WS, channel.intValue());
+ } else {
+ ((SwitchingCommonTokenStream)input).setTokenTypeChannel(WS, Token.HIDDEN_CHANNEL);
+ }
+ }
+ loc=RIGHT_CURLY
+ {
+ buf.append( loc.getText() );
+ text = buf.toString();
+ }
+ ;
+
square_chunk returns [String text]
@init {
StringBuffer buf = null;
@@ -1407,11 +1444,6 @@
;
-CURLY_CHUNK
- :
- '{' ( CURLY_CHUNK | NO_CURLY )* '}'
- ;
-
LEFT_PAREN
: '('
;
@@ -1428,11 +1460,14 @@
: ']'
;
-fragment
-NO_CURLY
- : ~('{'|'}')
- ;
+LEFT_CURLY
+ : '{'
+ ;
+RIGHT_CURLY
+ : '}'
+ ;
+
MULTI_LINE_COMMENT
: '/*' (options{greedy=false;} : .)* '*/'
{ $channel=HIDDEN; }
More information about the jboss-svn-commits
mailing list