org.abora.gold.filter
Class AndFilter

java.lang.Object
  |
  +--org.abora.gold.java.AboraHeaper
        |
        +--org.abora.gold.xpp.basic.Heaper
              |
              +--org.abora.gold.spaces.basic.XnRegion
                    |
                    +--org.abora.gold.filter.Filter
                          |
                          +--org.abora.gold.filter.AndFilter

public class AndFilter
extends Filter


Field Summary
protected  ImmuSet mySubFilters
           
 
Fields inherited from class org.abora.gold.filter.Filter
myCS
 
Fields inherited from class org.abora.gold.spaces.basic.XnRegion
CantMixCoordSpacesSignal, EmptyRegionSignal
 
Fields inherited from class org.abora.gold.xpp.basic.Heaper
AllBlasts, BecomeMap, GarbageCount, InGC, InitializedClasses, InitializingClasses, LastMemory, NextClientRequestNumber, NotOneElementSignal, PackageTable, PromiseNameTable, StringHashSBoxes
 
Fields inherited from class org.abora.gold.java.AboraHeaper
ActiveClubs, CurrentAuthor, CurrentBertCanopyCache, CurrentBertCrum, CurrentChunk, CurrentGrandMap, CurrentKeyMaster, CurrentPacker, CurrentSensorCanopyCache, CurrentServer, CurrentSession, CurrentSessions, CurrentTrace, InitialEditClub, InitialOwner, InitialReadClub, InitialSponsor, InsideTransactionFlag
 
Constructor Summary
AndFilter(FilterSpace cs, ImmuSet subs)
           
AndFilter(Rcvr receiver)
           
 
Method Summary
 int actualHashForEqual()
           
 XnRegion baseRegion()
          Essential.
 XnRegion complement()
          Essential.
 XnRegion fetchSpecialSubset(XnRegion other)
          return self or other if one is clearly a subset of the other, else NULL
 Stepper intersectedFilters()
          Essential.
 boolean isAllFilter()
          Essential.
 boolean isAnyFilter()
          Essential.
 boolean isEmpty()
          Every coordinate space has exactly one empty region.
 boolean isEqual(Heaper other)
          Two regions are equal iff they contain exactly the same set of positions
 boolean isFull()
          true if this is the largest possible region in this space -- the region that contains all
positions in the space.
static Heaper make(FilterSpace cs, ImmuSet subs)
          assumes that the interactions between elements have already been removed
 boolean match(XnRegion region)
          tell whether a region passes this filter
 Filter pass(Joint parent)
          return the simplest filter for looking at the children
 void printOn(java.io.PrintWriter oo)
           
 XnRegion relevantRegion()
          The region which is relevant to this filter, i.e.
 void sendSelfTo(Xmtr xmtr)
          do nothing
 ImmuSet subFilters()
           
 Stepper unionedFilters()
          Essential.
 
Methods inherited from class org.abora.gold.filter.Filter
actualStepper, andFilter, andFilterPrivate, asSimpleRegion, closedFilter, combineIntersect, combineIntersect, combineUnion, combineUnion, complexIntersect, complexUnion, coordinateSpace, count, distinctions, distributeIntersect, distributeIntersect, distributeUnion, distributeUnion, doesPass, fetchCanonicalIntersect, fetchCanonicalUnion, fetchIntersect, fetchPairIntersect, fetchPairUnion, fetchSpecialIntersect, fetchSpecialUnion, fetchUnion, filterSpace, getPairIntersect, getPairUnion, hasMember, info, intersect, intersectionFilter, isEnumerable, isFinite, isSimple, isSubsetOf, isSwitchedBy, isSwitchedOffBy, isSwitchedOnBy, notSubsetFilter, notSupersetFilter, openFilter, orFilter, orFilterPrivate, simpleRegions, simpleUnion, subsetFilter, supersetFilter, unionWith
 
Methods inherited from class org.abora.gold.spaces.basic.XnRegion
asArray, chooseMany, chooseMany, chooseOne, chooseOne, delta, disjointSimpleRegions, disjointSimpleRegions, dox, immuSet, intersects, isDistinction, isEnumerable, mapping, minus, simpleRegions, stepper, stepper, theOne, with, without
 
Methods inherited from class org.abora.gold.xpp.basic.Heaper
abstractDeclarationFor, abstractTypeFor, addMethodAttributeToInOf, addPackage, addPackageCategory, allClientProtocolOn, argumentTypesFor, arrow, blast, blast, BLAST, cachePromiseNameTable, cachePromiseNameTableIn, canYouBecome, cast, cleanPromiseClasses, cleanupGarbage, clientClassesDo, clientFunctionsOn, clientMethodsOn, clientProtocol, clientProtocolDo, clientProtocolOn, clientProtocolOn, collectibleClasses, compare, compileClientSubclasses, compileConstantPromiseMethods, compileCreateFromRcvr, compileEQ, compileGeneratedClassMethod, compileGeneratedMethod, compileHook, compilePromise, compilePromiseDefaultMethods, compilePromiseFluidDeclarations, compilePromiseHandlers, compilePromiseMethods, compileRequestCreateMsgInArguments, compileRequestEvaluateMsgInReturningArguments, compileRPCSpecialistEvaluateMsgForReturningArguments, compileSendSelfTo, compileSendSelfToSendHook, compileStubbleMethods, compileSubclassStubbleMethods, computeMangle, computePreorder, constantTypeValue, convert, convertCopyDeclarations, convertDeferredDeclarations, convertProxyDeclarations, convertSubclassCopyDeclarations, convertSubclassDeferredDeclarations, convertSubclassProxyDeclarations, copyReferencesToType, create, create, create, create, create, create, create, create, create, create, createRequestClassArguments, definesProxyMethods, delete, deref, destroy, destruct, destructor, enum, enumFlags, equals, exportName, fetchAttribute, fetchPackage, fetchSuperCategory, fileOutClientProtocol, findCategory, findSenderAndReceiverMethods, findTailInto, flushPromiseNameTable, foo, freezeClientClasses, freezeClientProtocol, freezeStProtocol, frozenClasses, garbageCollect, garbageCollectFrom, gcOpportunity, gcOpportunity, generatedCategory, generatePromiseNames, getCategory, getOrMakePackage, getSuperCategory, handlerSignaturesFrom, hash, hashForEqual, hasProxyMethods, info_clientClasses, info_clientSideClasses, info_promiseClasses, info_stProtocol, inGC, initializedClasses, initializingClasses, initPackages, initStringHashSBoxes, inspectPieces, instanceSize, IntegerVar, isByProxy, isConstructed, isDestructed, isEqualOrSubclassOf, isGenerated, isIntType, isKindOf, isRawType, isUnlocked, linkTimeNonInherited, make, makeClassTable, makeFillTable, makeRequestTable, mangle, markChildren, markCount, markInstances, mayBecome, mayBecomeAnySubclassOf, new1, newX, nonCopyVariables, notWorking, pack, packageClasses, packagingCategory, parseExportName, passe, pointerToStaticMember, pointerToStaticMember, pointerToVirtualMember, preorderMax, preorderNumber, PROBLEM, problems, promiseClass, promiseDefaultValue, promiseName, promiseNameTable, promiseToAbstract, registerPackageCategory, removeGeneratedCode, removeStubbleMethods, removeSubclassGeneratedCode, removeSubclassStubbleMethods, requestProcedure, requestProceduresFrom, returnTypeFor, rootName, scheduleTermination, sendProxyTo, serverNameFor, setGC, signal, signals, smalltalkSelector, stClientProtocol, stubbleSelectorTokenReturnsArguments, subclassNonCopyVariables, takeOop, togglePromiseName, togglePromiseOfParse, unimplemented, unmangle, verifyFreeze, wipeStubble
 
Methods inherited from class org.abora.gold.java.AboraHeaper
asOop, basicInspect, displayString, error, hack, halt, inspect, knownBug, mightNotImplement, REQUIRES, shouldImplement, shouldNotImplement, stubbleForSubclassResponsibility, thingToDo, willNotImplement
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

mySubFilters

protected ImmuSet mySubFilters
Constructor Detail

AndFilter

public AndFilter(FilterSpace cs,
                 ImmuSet subs)

AndFilter

public AndFilter(Rcvr receiver)
Method Detail

match

public boolean match(XnRegion region)
tell whether a region passes this filter

Overrides:
match in class Filter

pass

public Filter pass(Joint parent)
return the simplest filter for looking at the children

Overrides:
pass in class Filter

subFilters

public ImmuSet subFilters()

printOn

public void printOn(java.io.PrintWriter oo)
Overrides:
printOn in class Heaper

actualHashForEqual

public int actualHashForEqual()
Overrides:
actualHashForEqual in class Filter

isAllFilter

public boolean isAllFilter()
Description copied from class: Filter
Essential. Whether this is an 'all' Filter, i.e. it only matches Regions which contain
everything in the baseRegion

Overrides:
isAllFilter in class Filter

isAnyFilter

public boolean isAnyFilter()
Description copied from class: Filter
Essential. Whether this is an 'any' Filter, i.e. it matches Regions which contain anything
in the baseRegion

Overrides:
isAnyFilter in class Filter

isEmpty

public boolean isEmpty()
Description copied from class: XnRegion
Every coordinate space has exactly one empty region. It is the one containing no
positions. It and only it responds 'true' to this message.

Overrides:
isEmpty in class Filter

isEqual

public boolean isEqual(Heaper other)
Description copied from class: XnRegion
Two regions are equal iff they contain exactly the same set of positions

Overrides:
isEqual in class Filter

isFull

public boolean isFull()
Description copied from class: XnRegion
true if this is the largest possible region in this space -- the region that contains all
positions in the space. Note that in a space which has no positions (which is perfectly
valid), the one XuRegion would be both empty (since it has no positions) and full (since
it has all the positions in the space).

Overrides:
isFull in class Filter

complement

public XnRegion complement()
Description copied from class: XnRegion
Essential. Return a region of containing exactly those positions not in this region. The
complement of a distinction must be a distinction.

Overrides:
complement in class Filter

fetchSpecialSubset

public XnRegion fetchSpecialSubset(XnRegion other)
return self or other if one is clearly a subset of the other, else NULL

Overrides:
fetchSpecialSubset in class Filter

intersectedFilters

public Stepper intersectedFilters()
Description copied from class: Filter
Essential. Break this up into a bunch of Filters which when intersected (anded) together
give this one. If there is only one sub Filter it will be the receiver; otherwise, the sub
Filters will be simple enough that either they or their complements will return true from
at least one of isAndFilter or isOrFilter. If this is full (i.e. an open filter) then the
stepper will have no elements.

Overrides:
intersectedFilters in class Filter

unionedFilters

public Stepper unionedFilters()
Description copied from class: Filter
Essential. Break this up into a bunch of Filters which when unioned (ored) together give
this one. If there is only one sub Filter it will be the receiver; otherwise, the sub
Filters will be simple enough that either they or their complements will return true from
at least one of isAndFilter or isOrFilter. The sub Filters might not be disjoint Regions.
If this is empty (i.e. a closed filter) then the stepper will have no elements.

Overrides:
unionedFilters in class Filter

baseRegion

public XnRegion baseRegion()
Description copied from class: Filter
Essential. A region in the base space identifying what kind of filter this is. Succeeds
only if this isAnyFilter or isAllFilter.

Overrides:
baseRegion in class Filter

relevantRegion

public XnRegion relevantRegion()
Description copied from class: Filter
The region which is relevant to this filter, i.e. whose presence or absence in a region
can change whether it passes the filter

Overrides:
relevantRegion in class Filter

sendSelfTo

public void sendSelfTo(Xmtr xmtr)
Description copied from class: Heaper
do nothing

Overrides:
sendSelfTo in class Filter

make

public static Heaper make(FilterSpace cs,
                          ImmuSet subs)
assumes that the interactions between elements have already been removed



Translation - Copyright © 2003 David G Jones. All Rights Reserved.
Original Udanax-Gold - Copyright © 1979-1999 Udanax.com. All rights reserved.