Class

org.apache.daffodil.infoset

LengthState

Related Doc: package infoset

Permalink

sealed abstract class LengthState extends Logging

Keeps track of where we are for computing either the value length or content length. Serves to cache this information on the infoset element.

Note that this is used to capture and restore this state also, in which case the ie argument is null.

These 4 members are used to allow computation of e.g., contentLength but in a manner than can block if it is unable to be computed yet.

If only the maybeStartPos... is defined, AND the corresponding data output stream is NOT defined then it is an absolute position. If both the maybeStartPos... is defined AND the corresponding maybeStartDataOutputStream are defined, then that start pos is a relative start pos, and we'll need to compute the absolute start pos once we find out the absolute start pos of the data output stream.

Linear Supertypes
Logging, Identity, AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. LengthState
  2. Logging
  3. Identity
  4. AnyRef
  5. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Abstract Value Members

  1. abstract def flavor: String

    Permalink
    Attributes
    protected
  2. abstract def throwUnknown: Nothing

    Permalink
    Attributes
    protected

Concrete Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. final def areLogging(lvl: Type): Boolean

    Permalink
    Definition Classes
    Logging
  5. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  6. def clear(): Unit

    Permalink
  7. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  8. def copyFrom(other: LengthState): Unit

    Permalink
  9. def diagnoseNoLength(): String

    Permalink

    returns the earliest unfinished preceding DOS or finished, but without absolute positioning information.

  10. def doLogging(lvl: Type, msg: String, args: Seq[Any]): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  11. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  12. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  13. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  14. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  15. def getLogWriter(): LogWriter

    Permalink
    Definition Classes
    Logging
  16. final def getLoggingLevel(): Type

    Permalink
    Definition Classes
    Logging
  17. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  18. def isEndAbsolute: Boolean

    Permalink
  19. def isEndRelative: Boolean

    Permalink
  20. def isEndUndef: Boolean

    Permalink
  21. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  22. def isStartAbsolute: Boolean

    Permalink
  23. def isStartRelative: Boolean

    Permalink
  24. def isStartUndef: Boolean

    Permalink
  25. def lengthInBits: ULong

    Permalink
  26. def lengthInBytes: ULong

    Permalink
  27. final macro def log(lvl: Type, msg: String, args: Any*): Unit

    Permalink
    Definition Classes
    Logging
  28. lazy val logID: String

    Permalink
    Definition Classes
    Logging → Identity
  29. var logLevel: Maybe[Type]

    Permalink
    Definition Classes
    Logging
  30. var logWriter: Maybe[LogWriter]

    Permalink
    Definition Classes
    Logging
  31. var maybeComputedLength: MaybeULong

    Permalink
  32. var maybeEndDataOutputStream: Maybe[DataOutputStream]

    Permalink
  33. var maybeEndPos0bInBits: MaybeULong

    Permalink
  34. def maybeLengthInBits(): MaybeULong

    Permalink

    This returns Nope when the length is unable to be computed currently.

    This returns Nope when the length is unable to be computed currently.

    (Note that this differs from the way the length-related Evs work where returning Nope means variable-width encoding and lengthUnits characters were being used, and inability to compute is indicated by thrown exceptions.)

  35. def maybeLengthInBytes(): MaybeULong

    Permalink
  36. var maybeStartDataOutputStream: Maybe[DataOutputStream]

    Permalink
  37. var maybeStartPos0bInBits: MaybeULong

    Permalink
  38. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  39. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  40. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  41. def setAbsEndPos0bInBits(absPosInBits0b: ULong): Unit

    Permalink
  42. def setAbsStartPos0bInBits(absPosInBits0b: ULong): Unit

    Permalink
  43. def setLogWriter(lw: LogWriter): Unit

    Permalink
    Definition Classes
    Logging
  44. def setLoggingLevel(level: Type): Unit

    Permalink
    Definition Classes
    Logging
  45. def setRelEndPos0bInBits(relPosInBits0b: ULong, dos: DataOutputStream): Unit

    Permalink
  46. def setRelStartPos0bInBits(relPosInBits0b: ULong, dos: DataOutputStream): Unit

    Permalink
  47. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  48. def toString(): String

    Permalink
    Definition Classes
    LengthState → AnyRef → Any
  49. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  50. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  51. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  52. macro def withLoggingLevel[S](newLevel: Type)(body: ⇒ S): Unit

    Permalink
    Definition Classes
    Logging

Inherited from Logging

Inherited from Identity

Inherited from AnyRef

Inherited from Any

Ungrouped