org.erights.e.elib.tables
Class AtomicTwine

java.lang.Object
  |
  +--org.erights.e.elib.tables.EList
        |
        +--org.erights.e.elib.tables.ConstList
              |
              +--org.erights.e.elib.tables.Twine
                    |
                    +--org.erights.e.elib.tables.AtomicTwine
All Implemented Interfaces:
ArrayedList, DeepPassByCopy, EPrintable, Guard, Iteratable, Marker, PassByConstruction, Persistent, Selfless, Serializable, SlotGuard, ValueGuard
Direct Known Subclasses:
LocatedTwine, SimpleTwine

abstract class AtomicTwine
extends Twine
implements ArrayedList

A Twine which can describe itself without breaking itself up into smaller Twines.

Author:
Mark S. Miller

Field Summary
(package private)  String myStr
           
private static long serialVersionUID
           
 
Fields inherited from class org.erights.e.elib.tables.Twine
 
Fields inherited from class org.erights.e.elib.tables.ConstList
EmptyList
 
Fields inherited from interface org.erights.e.elib.serial.DeepPassByCopy
HONORARY, HONORED_NAMES
 
Fields inherited from interface org.erights.e.elib.serial.Persistent
HONORARY, HONORED_NAMES
 
Constructor Summary
(package private) AtomicTwine(String str)
           
 
Method Summary
 String bare()
          Enabled: Explicitly gets the String part of the twine.
 char charAt(int index)
          Enabled: From the E language, this is identical to get/1.
 ConstList getParts()
          Enabled: @return A list of AtomicTwines.
 Object getSecretArray()
          An array of my characters.
(package private)  Twine infectOneToOne(String str)
           
(package private) abstract  ConstList mergedParts(AtomicTwine other)
           
 int size()
          Enabled: How many entries are in the list?
 
Methods inherited from class org.erights.e.elib.tables.Twine
add, asFrom, asFrom, canonical, compareTo, compareToIgnoreCase, endsWith, equalsIgnoreCase, fromChars, fromParts, fromString, fromString, get, getBytes, getBytes, getOptSpan, getPartAt, getSourceMap, GetTwineMaker, indexOf, indexOf, infect, infect, isBare, lastIndexOf, lastIndexOf, lastStartOf, multiply, quote, replaceAll, rjoin, run, run, split, startOf, startsWith, startsWith, toLowerCase, toString, toUpperCase, trim, valueType
 
Methods inherited from class org.erights.e.elib.tables.ConstList
__optUncall, __printOn, accepts, and, butNot, coerce, coerce, compareTo, fromArray, fromArray, get, GetMaker, getName, makeSlot, makeSlot, match, not, or, readOnly, snapshot, xor
 
Methods inherited from class org.erights.e.elib.tables.EList
asKeys, asMap, asSet, contains, diverge, diverge, getArray, getArray, getArray, includes, indexOf1, indexOf1, iterate, last, lastIndexOf1, lastIndexOf1, lastStartOf, printOn, sort, sort, startOf, with, with
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.erights.e.elib.tables.Selfless
getSpreadUncall
 

Field Detail

serialVersionUID

private static final long serialVersionUID

myStr

final String myStr
Constructor Detail

AtomicTwine

AtomicTwine(String str)
Method Detail

charAt

public char charAt(int index)
            throws IndexOutOfBoundsException
Description copied from class: Twine
Enabled: From the E language, this is identical to get/1. But we provide it so the ELib programmer can avoid boxing the character.

Specified by:
charAt in class Twine
IndexOutOfBoundsException
See Also:
String.charAt(int)

size

public int size()
Description copied from class: EList
Enabled: How many entries are in the list?

Specified by:
size in class EList

bare

public String bare()
Description copied from class: Twine
Enabled: Explicitly gets the String part of the twine.

When using this call, this call itself will be the top level construct for breaking cycles. XXX where & what do we stabilize?

Specified by:
bare in class Twine

getParts

public ConstList getParts()
Description copied from class: Twine
Enabled: @return A list of AtomicTwines. An empty Twine returns the empty list.

Specified by:
getParts in class Twine

infectOneToOne

Twine infectOneToOne(String str)
Specified by:
infectOneToOne in class Twine

mergedParts

abstract ConstList mergedParts(AtomicTwine other)

getSecretArray

public Object getSecretArray()
An array of my characters.

Specified by:
getSecretArray in interface ArrayedList
Returns:


comments?