Class InequalityFilterNode
java.lang.Object
tools.refinery.interpreter.rete.network.BaseNode
tools.refinery.interpreter.rete.network.StandardNode
tools.refinery.interpreter.rete.single.SingleInputNode
tools.refinery.interpreter.rete.single.FilterNode
tools.refinery.interpreter.rete.single.InequalityFilterNode
- All Implemented Interfaces:
NetworkStructureChangeSensitiveNode
,Node
,Receiver
,Supplier
,Tunnel
This node filters patterns according to equalities and inequalities of elements. The 'subject' element is asserted to
be different from the elements given by the inequalityMask.
-
Field Summary
Fields inherited from class tools.refinery.interpreter.rete.single.SingleInputNode
mailbox, parent
Fields inherited from class tools.refinery.interpreter.rete.network.StandardNode
childMailboxes, children
Fields inherited from class tools.refinery.interpreter.rete.network.BaseNode
nodeId, reteContainer, tag, traceInfos
-
Constructor Summary
ConstructorsConstructorDescriptionInequalityFilterNode
(ReteContainer reteContainer, int subject, TupleMask inequalityMask) -
Method Summary
Methods inherited from class tools.refinery.interpreter.rete.single.FilterNode
pullInto, pullIntoWithTimeline, update
Methods inherited from class tools.refinery.interpreter.rete.single.SingleInputNode
appendParent, assignTraceInfo, getCommunicationTracker, getMailbox, getParents, instantiateMailbox, propagatePullInto, propagatePullIntoWithTimestamp, removeParent
Methods inherited from class tools.refinery.interpreter.rete.network.StandardNode
appendChild, constructIndex, getChildMailboxes, getPulledContents, getReceivers, issueError, networkStructureChanged, propagateUpdate, removeChild
Methods inherited from class tools.refinery.interpreter.rete.network.BaseNode
acceptPropagatedTraceInfo, getContainer, getNodeId, getTag, getTraceInfoPatternsEnumerated, getTraceInfos, setTag, toString, toStringCore
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface tools.refinery.interpreter.rete.network.Node
acceptPropagatedTraceInfo, getContainer, getNodeId, getTag, getTraceInfos, setTag
Methods inherited from interface tools.refinery.interpreter.rete.network.Receiver
batchUpdate
Methods inherited from interface tools.refinery.interpreter.rete.network.Supplier
appendChild, constructIndex, getPulledContents, getPulledContents, getReceivers, removeChild
-
Constructor Details
-
InequalityFilterNode
- Parameters:
reteContainer
-subject
- the index of the element that should be compared.inequalityMask
- the indices of elements that should be different from the subjectIndex.
-
-
Method Details
-
check
Description copied from class:FilterNode
Abstract filtering predicate. Expected to be stateless.- Specified by:
check
in classFilterNode
- Parameters:
ps
- the matching to be checked.- Returns:
- true if and only if the parameter matching is allowed to pass through this node.
-