org.abora.gold.wrapper
Class FeText

java.lang.Object
  |
  +--org.abora.gold.java.AboraHeaper
        |
        +--org.abora.gold.xpp.basic.Heaper
              |
              +--org.abora.gold.wrapper.FeWrapper
                    |
                    +--org.abora.gold.wrapper.FeText

public class FeText
extends FeWrapper

Handles a integer-indexed, contiguous, zero-based Edition of RangeElements


Field Summary
protected static FeWrapperSpec TheTextSpec
           
 
Fields inherited from class org.abora.gold.wrapper.FeWrapper
myEdition, myInner, mySpec, TheWrapperSpec
 
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
FeText(FeEdition edition, FeWrapperSpec spec)
           
 
Method Summary
static boolean check(FeEdition edition)
           
static FeText construct(FeEdition edition)
          Called from internal code to create and endorse new Editions.
 FeEdition contents()
          The Edition of the actual contents, without any style information.
 IntegerVar count()
          The number of elements in the string
 FeText extract(IntegerRegion region)
          All the text lying within the region, with the gaps compressed out.
static void info()
          {FeEdition CLIENT} contents
{IntegerVar CLIENT} count
{FeText CLIENT} extract: region {IntegerRegion}
{FeText CLIENT} insert: position {IntegerVar} with: text {FeText}
{FeText CLIENT} move: pos {IntegerVar} with: region {IntegerRegion}
{FeText CLIENT} replace: dest {IntegerRegion} with: other {FeText}
static void initTimeNonInherited()
           
 FeText insert(IntegerVar position, FeText text)
          Insert new information into the Edition at the given point, pushing everything after it
forward.
static void linkTimeNonInherited()
           
static Heaper make(PrimArray data)
           
static FeWrapper makeWrapper(FeEdition edition)
           
 FeText move(IntegerVar pos, IntegerRegion region)
          Insert a virtual copy of the region of text before the given position, and remove it from
its current location.
 void printOn(java.io.PrintWriter oo)
           
 FeText replace(IntegerRegion dest, FeText other)
          Replaces a region of text with a virtual copy of text from another document.
If the destination region lies to the left of the domain, inserts before the beginning; if
it intersects the domain, insert at the first common position; if it lies after the end,
insert after the end.
static void setSpec(FeWrapperSpec wrap)
           
static FeWrapperSpec spec()
           
 void validate(IntegerVar pos)
          Check that information can be inserted at the position.
 
Methods inherited from class org.abora.gold.wrapper.FeWrapper
actualHashForEqual, checkDomainHas, checkDomainIn, checkSubEdition, checkSubEditions, checkSubSequence, checkSubSetEdition, checkSubWork, edition, inner, isEqual, isWrapperOf
 
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, isEqual, isEqualOrSubclassOf, isGenerated, isIntType, isKindOf, isRawType, isUnlocked, 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
 

Field Detail

TheTextSpec

protected static FeWrapperSpec TheTextSpec
Constructor Detail

FeText

public FeText(FeEdition edition,
              FeWrapperSpec spec)
Method Detail

contents

public FeEdition contents()
The Edition of the actual contents, without any style information. You should use this
instead of edition() when you want to get the Edition for comparisons, queries, etc.
Future styled text implementations will not store the contents as directly as we do now.


count

public IntegerVar count()
The number of elements in the string


extract

public FeText extract(IntegerRegion region)
All the text lying within the region, with the gaps compressed out.


insert

public FeText insert(IntegerVar position,
                     FeText text)
Insert new information into the Edition at the given point, pushing everything after it
forward.


move

public FeText move(IntegerVar pos,
                   IntegerRegion region)
Insert a virtual copy of the region of text before the given position, and remove it from
its current location. If the position is one past the last character, then it will be
inserted after the end. If the region is discontiguous, then the contiguous pieces are
concatenated together, in sequence, and inserted.


replace

public FeText replace(IntegerRegion dest,
                      FeText other)
Replaces a region of text with a virtual copy of text from another document.
If the destination region lies to the left of the domain, inserts before the beginning; if
it intersects the domain, insert at the first common position; if it lies after the end,
insert after the end. Fails with
BLAST(AmbiguousReplacement) if the region is empty.
May be used to copy information within a single document.
This operation may not be particularly useful with non-simple destination regions.


validate

public void validate(IntegerVar pos)
Check that information can be inserted at the position. Blast if not.


printOn

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

check

public static boolean check(FeEdition edition)

construct

public static FeText construct(FeEdition edition)
Called from internal code to create and endorse new Editions. Does not check the contents;
assumes that it will only be called by trusted code.


makeWrapper

public static FeWrapper makeWrapper(FeEdition edition)

setSpec

public static void setSpec(FeWrapperSpec wrap)

initTimeNonInherited

public static void initTimeNonInherited()

linkTimeNonInherited

public static void linkTimeNonInherited()

make

public static Heaper make(PrimArray data)

spec

public static FeWrapperSpec spec()

info

public static void info()
{FeEdition CLIENT} contents
{IntegerVar CLIENT} count
{FeText CLIENT} extract: region {IntegerRegion}
{FeText CLIENT} insert: position {IntegerVar} with: text {FeText}
{FeText CLIENT} move: pos {IntegerVar} with: region {IntegerRegion}
{FeText CLIENT} replace: dest {IntegerRegion} with: other {FeText}



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