ACCUMULATOR - this Accumulator typepublic interface Accumulator<ACCUMULATOR extends Accumulator<ACCUMULATOR>> extends SealedAccumulator<ACCUMULATOR>, MutableAccumulator<ACCUMULATOR>, Primitive<ACCUMULATOR>, Iterable<Accumulator<?>>
Primitive
target, a Javascript-like associative list of
member relationships, and a function defined by the subclass of
Accumulator. The scalar and textual values of the Primitive target are
offered by the Accumulator's own Primitive interface, while the structural
properties of the relationship container are offered through through the
structural queries of the same Primitive interface. For instance, both the
Accumulator's StructureProperties.isEmpty() and SealedAlgebraicStructure.size() functions will reflect
the current member count, not the size of the associated Primitive target.
Similarly, the MutableTextValue.clear() and MutableAlgebraicStructure.clearContents() calls will empty
the relationship collection. To access the structure of the target Primitive,
the use SealedAccumulator.getTarget() first. Moreover, SealedAlgebraicStructure.getDomain() will
reflect the domain of the Accumulator, which will usually be
ALGEBRAIC.associative list. They keys
in this mapped List, although they are themselves Accumulators, are
usually implemented by text, and are usually interpreted as attribute names.
The values in this list are, of course, the Accumulator values of those
attributes. Since both keys and values are other Accumulators, it is possible
to build rich, hierarchical structures.apply or copy functions is to
avoid implicit loops. Instead, function implementors should try to implement
atomic, or near-atomic actions, then leave looping control to the caller. To
support this, the apply function must return an applicable
ControlIntention, so that the caller can be appropriately directed
towards their next recommended course of action. The presence of the
Accumulator members collection increases the risk of long implicit looping
outside of the caller's control, which the state machine control strategy is
intended to help avoid.| Modifier and Type | Method and Description |
|---|---|
ControlIntention |
apply(Accumulator<?> aStack)
Apply this Accumulator's association function to the specified
Accumulator, using it as a parameter and result stack
|
first, getTarget, isEqualToAccumulator, isTargetReplaceable, last, members, peek, toFunctionNamecopy, copySharing, copySharing, copySharing, copySharing, copyUsingAccumulator, copyUsingPrimitive, toAccumulatorpop, push, push, push, push, push, push, push, push, push, push, push, push, push, pushPrimitive, pushText, replaceRelationshipsUsing, setAccumulator, shareTarget, shareTargetWithswapPrimitivesinducePostDecrement, inducePostIncrement, inducePrimitiveMaximum, inducePrimitiveMinimum, inducePrimitiveValuecompareToPrimitive, isEqualToPrimitive, isGreaterOrEqualToPrimitive, isGreaterThanPrimitive, isLessOrEqualToPrimitive, isLessThanPrimitive, isNotEqualToPrimitivecompareTocopyUsingText, toPrimitiveandOfPrimitive, angleWithPrimitive, differenceOfPrimitive, hypotenuseWithPrimitive, modOfPrimitive, orOfPrimitive, powerOfPrimitive, productOfPrimitive, quotientOfPrimitive, setBoolean, setCharacter, setPrimitive, sumOfPrimitive, xorOfPrimitiveinducePostDecrement, inducePostIncrement, induceRealValueinducePostDecrement, inducePostIncrement, induceScalarValuecompareToReal, compareToReal, compareToReal, isEqual, isEqual, isEqualToReal, isGreater, isGreater, isGreaterOrEqual, isGreaterOrEqual, isGreaterOrEqualToReal, isGreaterThanReal, isLess, isLess, isLessOrEqual, isLessOrEqual, isLessOrEqualToReal, isLessThanReal, isNotEqual, isNotEqual, isNotEqualToRealcompareToNumber, compareToScalar, compareToScalar, compareToScalar, compareToScalar, compareToScalar, compareToScalar, compareToScalar, compareToScalar, compareToScalar, compareToZero, isEqual, isEqual, isEqual, isEqual, isEqual, isEqual, isEqual, isEqual, isEqualToNumber, isEqualToScalar, isFalse, isGreater, isGreater, isGreater, isGreater, isGreater, isGreater, isGreater, isGreater, isGreaterOrEqual, isGreaterOrEqual, isGreaterOrEqual, isGreaterOrEqual, isGreaterOrEqual, isGreaterOrEqual, isGreaterOrEqual, isGreaterOrEqual, isGreaterOrEqualToNumber, isGreaterOrEqualToScalar, isGreaterThanNumber, isGreaterThanScalar, isLess, isLess, isLess, isLess, isLess, isLess, isLess, isLess, isLessOrEqual, isLessOrEqual, isLessOrEqual, isLessOrEqual, isLessOrEqual, isLessOrEqual, isLessOrEqual, isLessOrEqual, isLessOrEqualToNumber, isLessOrEqualToScalar, isLessThanNumber, isLessThanScalar, isNotEqual, isNotEqual, isNotEqual, isNotEqual, isNotEqual, isNotEqual, isNotEqual, isNotEqual, isNotEqualToNumber, isNotEqualToScalar, isTrue, toBoolean, toCharacter, toCodePoint, toEnumeration, toNumberequals, getConcurrency, hashCode, toStringisFinite, isImaginary, isInfinity, isInvalid, isMaximum, isMinimum, isModulo, isNegative, isNegativeFinite, isNegativeInfinity, isPositive, isPositiveFinite, isPositiveInfinity, isReal, isUnity, isValid, isZero, signumisAlphabetic, isBmpCodePoint, isDigit, isHighSurrogate, isIdentifierIgnorable, isIdeographic, isISOControl, isJavaIdentifierPart, isJavaIdentifierStart, isLetter, isLetterOrDigit, isLowerCase, isLowSurrogate, isMirrored, isSupplementaryCodePoint, isSurrogate, isTitleCase, isUnicode, isUnicodeIdentifierPart, isUnicodeIdentifierStart, isUpperCase, isValidCodePoint, isWhitespacebooleanValuebyteValuecharValuedoubleValuefloatValueintValuelongValueshortValueinduceRealMaximum, induceRealMinimumgetPrecision, induceScalarMaximum, induceScalarMinimuminduceRealSizeinduceScalarSizegetDomain, getStructureStrategy, longSize, sizeisConfigurable, isCountable, isElastic, isEmpty, isExpandable, isOrdered, isReducible, isUniquecopyUsing, copyUsing, copyUsingReal, toRealcopyUsing, copyUsing, copyUsing, copyUsing, copyUsing, copyUsing, copyUsing, copyUsing, copyUsingScalar, toScalarand, andOfReal, angleWithReal, difference, difference, differenceOfReal, gcd, gcdOfReal, hypotenuseWithReal, mod, mod, modOfReal, or, orOfReal, powerOfReal, product, product, productOfReal, quotient, quotient, quotientOfReal, setReal, sum, sum, sumOfReal, xor, xorOfRealabsoluteValue, and, and, and, and, and, and, andOfNumber, andOfScalar, angleWith, angleWithNumber, angleWithScalar, arcCosine, arcSine, arcTangent, base10Log, ceiling, cosine, cube, cubeRoot, decrement, degrees, difference, difference, difference, difference, difference, difference, difference, difference, differenceOfNumber, differenceOfScalar, down, exponential, exponentialLessOne, floor, gcd, gcd, gcd, gcd, gcd, gcdOfNumber, gcdOfScalar, halfDown, halfEven, halfUp, hyperbolicCosine, hyperbolicSine, hyperbolicTangent, hypotenuseWith, hypotenuseWithNumber, hypotenuseWithScalar, increment, invalidate, inverse, milliseconds, mod, mod, mod, mod, mod, mod, mod, mod, modOfNumber, modOfScalar, nanoseconds, naturalLog, naturalLogPlusOne, negate, not, or, or, or, or, or, or, orOfNumber, orOfScalar, power, power, powerOfNumber, powerOfScalar, product, product, product, product, product, product, product, product, productOfNumber, productOfScalar, quotient, quotient, quotient, quotient, quotient, quotient, quotient, quotient, quotientOfNumber, quotientOfScalar, radians, random, round, setE, setEnumeration, setMaximum, setMinimum, setNegativeInfinity, setNumber, setPi, setPositiveInfinity, setScalar, setUnity, setZero, shiftLeft, shiftRight, shiftRightExtendZero, sine, square, squareRoot, sum, sum, sum, sum, sum, sum, sum, sum, sumOfNumber, sumOfScalar, tangent, up, xor, xor, xor, xor, xor, xor, xorOfNumber, xorOfScalarbooleanPostDecrement, booleanPostIncrement, setFalse, setScalar, setTruebytePostDecrement, bytePostIncrement, setScalarcharPostDecrement, charPostIncrement, setScalardoublePostDecrement, doublePostIncrement, setScalarfloatPostDecrement, floatPostIncrement, setScalarintPostDecrement, intPostIncrement, setScalarlongPostDecrement, longPostIncrement, setScalarsetScalar, shortPostDecrement, shortPostIncrementassertPrecision, promoteToassertDomain, clear, clearContentstoUnlimitedIntegersetReal, unlimitedIntegerPostDecrement, unlimitedIntegerPostIncrementtoUnlimitedDecimalsetReal, unlimitedDecimalPostDecrement, unlimitedDecimalPostIncrementinduceTextSize, induceTextValuecompareToText, isEqualToText, isGreaterOrEqualToText, isGreaterThanText, isLessOrEqualToText, isLessThanText, isNotEqualToTextcopyUsingTextcodePointAt, codePointBefore, codePointCount, indexOfText, indexOfText, substring, substringcharAt, length, subSequence, toStringisEmpty, isTextappend, append, append, append, append, append, append, append, append, append, append, append, append, append, appendCodePoint, clear, clearText, delete, deleteCharAt, insert, insert, insert, insert, insert, insert, insert, insert, insert, insert, insert, insert, lowerCase, prepend, prepend, prepend, prepend, prepend, prepend, prepend, prepend, prepend, prepend, prepend, prepend, prepend, replace, replace, replaceAll, replaceCharacter, replaceFirst, reverse, setCharAt, setLength, setText, textPostDecrement, textPostIncrement, titleCase, trim, upperCaseControlIntention apply(Accumulator<?> aStack)
aStack - a parameter and result stackaction to be taken by
the callerCopyright © 2006-2012 Ware-Squared Software Development. All Rights Reserved.