org.abora.gold.spaces.unordered
Class IdentityDsp

java.lang.Object
  |
  +--org.abora.gold.java.AboraHeaper
        |
        +--org.abora.gold.xpp.basic.Heaper
              |
              +--org.abora.gold.spaces.basic.Mapping
                    |
                    +--org.abora.gold.spaces.basic.Dsp
                          |
                          +--org.abora.gold.spaces.unordered.IdentityDsp
Direct Known Subclasses:
FilterDsp, HeaperDsp, IDDsp, RealDsp

public class IdentityDsp
extends Dsp

An implementation sharing convenience for Dsp classes which only provide the identity
mapping functionality for their coordinate spaces. This provides everything except the
coordinate space itself (which must be provided by the subclass). Will eventually be
declared NOT_A_TYPE, so don''t use it in type declarations.
Assumes that if a given space uses it as its identity Dsp, then the one cached instance
will be the only identity Dsp for that space. I.e., I do equality comparison as an EQ
object. If this assumpsion isn''t true, please override isEqual and hashForEqual. See
PathDsp.
IdentityDsp is in module "unorder" because typically unordered spaces will only have an
identity Dsp and so want to subclass this class. Non-unordered spaces should also feel
free to use this as appropriate.


Field Summary
 
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
IdentityDsp()
           
 
Method Summary
 int actualHashForEqual()
           
 Dsp compose(Dsp other)
          Return the composition of the two Dsps.
 CoordinateSpace coordinateSpace()
          the coordinate space of the domain and range of the Dsp
static void initTimeInherited()
           
 Mapping inverse()
          Return the inverse of this transformation.
 Dsp inverseCompose(Dsp other)
          Return the composition of my inverse with the other.
a->inverseCompose(b) ->isEqual (a->inverse()->compose(b))
 Position inverseOf(Position pos)
          Since Dsps always represent a unique mapping in either direction, the permission to BLAST
in the Mapping constract no longer applies.
a->inverseOf(b) ->isEqual (a->inverse()->of(b))
 XnRegion inverseOfAll(XnRegion reg)
          Inverse transform a region.
 boolean isEqual(Heaper other)
          Return true if the two objects are equal.
 boolean isIdentity()
          Says whether this Dsp maps every Position onto itself
static void linkTimeInherited()
           
 Dsp minus(Dsp other)
          Return the difference of the two Dsps.
(a->compose(b) ->minus(b))->isEqual (a)
 Position of(Position pos)
          Since Dsps always represent a unique mapping in either direction, the permission to BLAST
in the Mapping constract no longer applies.
 XnRegion ofAll(XnRegion reg)
          If 'reg' is a simple region, then the result must also be simple
 void printOn(java.io.PrintWriter oo)
           
static void suppressInitTimeInherited()
           
static void suppressLinkTimeInherited()
           
 
Methods inherited from class org.abora.gold.spaces.basic.Dsp
appliedAfter, domain, fetchCombine, fetchDsp, isComplete, preCompose, range, rangeSpace, restrict, restrictRange, simpleMappings, simpleRegionMappings, transformedBy
 
Methods inherited from class org.abora.gold.spaces.basic.Mapping
combine, domainSpace, export, info, inverseOfInt, make, make, make, make, make, ofInt, simplerMappings, unrestricted
 
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, sendSelfTo, 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
 

Constructor Detail

IdentityDsp

public IdentityDsp()
Method Detail

inverseOf

public Position inverseOf(Position pos)
Description copied from class: Dsp
Since Dsps always represent a unique mapping in either direction, the permission to BLAST
in the Mapping constract no longer applies.
a->inverseOf(b) ->isEqual (a->inverse()->of(b))

Overrides:
inverseOf in class Dsp

inverseOfAll

public XnRegion inverseOfAll(XnRegion reg)
Description copied from class: Dsp
Inverse transform a region. A simple region must yield a simple region.
a->inverseOfAll(b) ->isEqual (a->inverseAll()->of(b))

Overrides:
inverseOfAll in class Dsp

of

public Position of(Position pos)
Description copied from class: Dsp
Since Dsps always represent a unique mapping in either direction, the permission to BLAST
in the Mapping constract no longer applies.

Overrides:
of in class Dsp

ofAll

public XnRegion ofAll(XnRegion reg)
Description copied from class: Dsp
If 'reg' is a simple region, then the result must also be simple

Overrides:
ofAll in class Dsp

compose

public Dsp compose(Dsp other)
Description copied from class: Dsp
Return the composition of the two Dsps. Two Dsps of the same space are always composable.
(a->compose(b) ->minus(b))->isEqual (a)
(a->compose(b) ->of(pos))->isEqual (a->of (b->of (pos))

Overrides:
compose in class Dsp

inverse

public Mapping inverse()
Description copied from class: Dsp
Return the inverse of this transformation. Considering the Dsp as a set of pairs
(see class comment), return the Dsp which has the mirror image of all my
pairs.

Overrides:
inverse in class Dsp

inverseCompose

public Dsp inverseCompose(Dsp other)
Description copied from class: Dsp
Return the composition of my inverse with the other.
a->inverseCompose(b) ->isEqual (a->inverse()->compose(b))

Overrides:
inverseCompose in class Dsp

minus

public Dsp minus(Dsp other)
Description copied from class: Dsp
Return the difference of the two Dsps.
(a->compose(b) ->minus(b))->isEqual (a)

Overrides:
minus in class Dsp

printOn

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

isIdentity

public boolean isIdentity()
Description copied from class: Dsp
Says whether this Dsp maps every Position onto itself

Overrides:
isIdentity in class Dsp

coordinateSpace

public CoordinateSpace coordinateSpace()
Description copied from class: Dsp
the coordinate space of the domain and range of the Dsp

Overrides:
coordinateSpace in class Dsp

actualHashForEqual

public int actualHashForEqual()
Overrides:
actualHashForEqual in class Mapping

isEqual

public boolean isEqual(Heaper other)
Description copied from class: Heaper
Return true if the two objects are equal.

Overrides:
isEqual in class Heaper

initTimeInherited

public static void initTimeInherited()

linkTimeInherited

public static void linkTimeInherited()

suppressInitTimeInherited

public static void suppressInitTimeInherited()

suppressLinkTimeInherited

public static void suppressLinkTimeInherited()


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