Package org.shapelogic.logic

Goal driven logic

See:
          Description

Interface Summary
ProblemI Not sure if i need this one The abstract class for a formal problem.
Task<T>  
 

Class Summary
AndTask In order for an AndTask to succeed all the child Tasks need to succeed.

So I should have a way to take one at a time and call calc on them.

BaseTask<T> Base class for Task, very fundamental all other tasks are subclassed from this The majority of task functionalety are placed here.
BooleanTask Give an expression this is evaluated in the current context If it returns true the task passes else it fails
CalcAndSetTask<T>  
CalcAndSetTasks This task is inserting values into the context tree
CommonLogicExpressions Contains commonly used logic expression strings So all the logic expressions that are used in the letter match is defined here.
ContextCalculation A calculation that lives in a context.
ContextFactory  
CountCollectionGreaterTask When an expression returns a collection this does a count on it and does a greater than comparison It will also work when the expression is returning null and the expected number is 0.
CountCollectionTask When an expression returns a collection this does a count on it.
DynaBeanFactory Helper class for parsing classes from string.
ExistTask<T> This only checks that something exists or can be found by a calculation
ExistTasks This only checks that something exists or can be found by a calculation
FilterCountGreaterTask FilterCountTask is a new type of filter expression The advantage of using this over the SimpleNumericTask is that you can do boolean expression of the filter expressions Might be deprecated since there are several classes that does a lowest level comparison
FilterCountTask FilterCountTask is a new type of filter expression The advantage of using this over the SimpleNumericTask is that you can do boolean expression of the filter expressions
LetterTaskFactory Should create all the rules used for letter matching.
LetterTaskLegacyFactory Should create all the rules used for letter matching.
NumericGreaterTask Does numerical comparison of an expected value and a found value Checks that calculated value is greater than the expected value There are several version doing related tasks: This is the simple version that does not do a size() operation for you
ParametricRuleTask More general task that can create all the other tasks, by taking 2 parameters.
Problem  
RootTask This the root object the root context and the root task.
SimpleNumericTask Does numerical comparison of an expected value and a found value.
SimpleTask Base class for tasks where you have an expression to be evaluated in local context and an expected value.
TaskModuleIterator  
XOrTask Only one sub task should succeed for this to succeed.
 

Enum Summary
LogicState This is the stages that a calculation, task or variable can be in
 

Package org.shapelogic.logic Description

Goal driven logic

This are tasks with subtasks, they can create an AI choice tree if there are choices that cannot be made.
There are simple rules at the lowest level e.g.
polygon.holeCount = 1

At higher level these are grouped into clusters with AndTasks.
To make choices use an XORTask.
It is currently not super well integrated with the stream package that was introduced in ShapeLogic 0.9.
This should be addressed in ShapeLogic 1.0.

Dependency

There is no dependency of any image processing code

Declarative programming

Declarative programming in ShapeLogic is build on the following:



Copyright © 2008. All Rights Reserved.