[jboss-svn-commits] JBL Code SVN: r10141 - in labs/jbossrules/trunk/drools-compiler/src: test/java/org/drools/clp and 1 other directory.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Mon Mar 12 22:12:07 EDT 2007
Author: mark.proctor at jboss.com
Date: 2007-03-12 22:12:07 -0400 (Mon, 12 Mar 2007)
New Revision: 10141
Modified:
labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/clp/BlockExecutionEngine.java
labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/clp/CLPEval.java
labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/clp/CLPPredicate.java
labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/clp/CLPReturnValue.java
labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/clp/ExecutionEngine.java
labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/clp/LongLiteralValue.java
labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/clp/ClpParserTest.java
Log:
JBRULES-720 Clips Parser
-still trying to get functions to work
Modified: labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/clp/BlockExecutionEngine.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/clp/BlockExecutionEngine.java 2007-03-13 01:38:33 UTC (rev 10140)
+++ labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/clp/BlockExecutionEngine.java 2007-03-13 02:12:07 UTC (rev 10141)
@@ -31,6 +31,10 @@
this.functions.length - 1 );
temp[temp.length - 1] = function;
this.functions = temp;
+ }
+
+ public Function[] getFunctions() {
+ return this.functions;
}
public int getNextIndex() {
Modified: labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/clp/CLPEval.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/clp/CLPEval.java 2007-03-13 01:38:33 UTC (rev 10140)
+++ labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/clp/CLPEval.java 2007-03-13 02:12:07 UTC (rev 10141)
@@ -33,6 +33,10 @@
setFunction( function );
}
+ public Function[] getFunctions() {
+ return new Function[] { this.function };
+ }
+
public int getNextIndex() {
return this.index++;
}
Modified: labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/clp/CLPPredicate.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/clp/CLPPredicate.java 2007-03-13 01:38:33 UTC (rev 10140)
+++ labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/clp/CLPPredicate.java 2007-03-13 02:12:07 UTC (rev 10141)
@@ -33,6 +33,10 @@
this.function = function;
}
+ public Function[] getFunctions() {
+ return new Function[] { this.function };
+ }
+
public int getNextIndex() {
return this.index++;
}
Modified: labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/clp/CLPReturnValue.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/clp/CLPReturnValue.java 2007-03-13 01:38:33 UTC (rev 10140)
+++ labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/clp/CLPReturnValue.java 2007-03-13 02:12:07 UTC (rev 10141)
@@ -34,6 +34,10 @@
public void addFunction(Function function) {
setFunction( function );
}
+
+ public Function[] getFunctions() {
+ return new Function[] { this.function };
+ }
public int getNextIndex() {
return this.index++;
Modified: labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/clp/ExecutionEngine.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/clp/ExecutionEngine.java 2007-03-13 01:38:33 UTC (rev 10140)
+++ labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/clp/ExecutionEngine.java 2007-03-13 02:12:07 UTC (rev 10141)
@@ -4,4 +4,6 @@
public void addFunction(Function function);
public int getNextIndex();
+
+ public Function[] getFunctions();
}
Modified: labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/clp/LongLiteralValue.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/clp/LongLiteralValue.java 2007-03-13 01:38:33 UTC (rev 10140)
+++ labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/clp/LongLiteralValue.java 2007-03-13 02:12:07 UTC (rev 10141)
@@ -56,5 +56,27 @@
public String getStringValue(ExecutionContext context) {
return Long.toString( this.longValue );
+ }
+
+ public String toString() {
+ return "[LongLiteralValue value='" + this.longValue + "']";
+ }
+
+ public int hashCode() {
+ final int PRIME = 31;
+ int result = 1;
+ result = PRIME * result + (int) (longValue ^ (longValue >>> 32));
+ return result;
+ }
+
+ public boolean equals(Object obj) {
+ if ( this == obj ) return true;
+ if ( obj == null ) return false;
+ if ( ! ( obj instanceof LongLiteralValue ) ) return false;
+ final LongLiteralValue other = (LongLiteralValue) obj;
+ if ( longValue != other.longValue ) return false;
+ return true;
}
+
+
}
Modified: labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/clp/ClpParserTest.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/clp/ClpParserTest.java 2007-03-13 01:38:33 UTC (rev 10140)
+++ labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/clp/ClpParserTest.java 2007-03-13 02:12:07 UTC (rev 10141)
@@ -32,11 +32,15 @@
public void testParseFunction() throws Exception {
ExecutionBuildContext context = new ExecutionBuildContext( new CLPPredicate() );
- parse( "(< 1 2)" ).function( context );
+ Function f = parse( "(< 1 2)" ).function( context );
+
+ assertEquals( "<", f.getName() );
+ assertEquals( new LongLiteralValue( 1 ), f.getParameters()[0] );
+ assertEquals( new LongLiteralValue( 2 ), f.getParameters()[1] );
}
public void testPatternsRule() throws Exception {
- RuleDescr rule = parse( "(defrule xxx ?b <- (person (name \"yyy\"&?bf|~\"zzz\"|~=(+ 2 2)&:(< 1 2)) ) ?c <- (hobby (type ?bf2&~iii) (rating fivestar) )" ).rule();
+ RuleDescr rule = parse( "(defrule xxx ?b <- (person (name \"yyy\"&?bf|~\"zzz\"|~=(+ 2 3)&:(< 1 2)) ) ?c <- (hobby (type ?bf2&~iii) (rating fivestar) )" ).rule();
assertEquals( "xxx",
rule.getName() );
@@ -98,8 +102,14 @@
ReturnValueRestrictionDescr retDescr = (ReturnValueRestrictionDescr) restrictionList.get( 6 );
assertEquals( "!=",
retDescr.getEvaluator() );
- assertEquals( "ppp",
- retDescr.getContent() );
+ CLPReturnValue clprv = ( CLPReturnValue ) retDescr.getContent();
+ Function f = clprv.getFunctions()[0];
+ assertEquals( "+", f.getName() );
+ assertSame( new LongLiteralValue( 2 ), f.getParameters()[0] );
+
+
+// assertEquals( "ppp",
+// );
PredicateDescr predicateDescr = (PredicateDescr) colList.get( 1 );
assertEquals( "ooo",
More information about the jboss-svn-commits
mailing list