Trait

org.apache.daffodil.processors

Suspension

Related Doc: package processors

Permalink

trait Suspension extends Serializable with Logging

The suspension object keeps track of the state of the task, i.e., whether it is done, whether it is making forward progress when run or not.

A suspension" may block, by which we mean it may set isDone to false, and return.

Running the suspension again tries again and will either block or complete.

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

Abstract Value Members

  1. abstract def doTask(ustate: UState): Unit

    Permalink
    Attributes
    protected
  2. abstract def rd: RuntimeData

    Permalink

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. def UE(ustate: UState, s: String, args: Any*): Nothing

    Permalink
  5. final def areLogging(lvl: Type): Boolean

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

    Permalink
    Definition Classes
    Any
  7. final def block(nodeOrVar: AnyRef, info: AnyRef, index: Long, exc: AnyRef): Unit

    Permalink
  8. final def blockedLocation: String

    Permalink
  9. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  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. final def explain(): Unit

    Permalink
  14. def finalize(): Unit

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

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

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

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

    Permalink
    Definition Classes
    AnyRef → Any
  19. final def isBlocked: Boolean

    Permalink
  20. final def isDone: Boolean

    Permalink
  21. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  22. final def isMakingProgress: Boolean

    Permalink
  23. val isReadOnly: Boolean

    Permalink

    Specifies that this suspension does not write to the data output stream.

    Specifies that this suspension does not write to the data output stream.

    Override in TargetLengthOperation,and in SuspendableExpression as they don't write to the DOS hence, if a DOS is created it can be setFinished immediately.

    TODO: Redundant with implementing maybeKnownLengthInBits as MaybeULong(0L)

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

    Permalink
    Definition Classes
    Logging
  25. lazy val logID: String

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

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

    Permalink
    Definition Classes
    Logging
  28. def maybeKnownLengthInBits(ustate: UState): MaybeULong

    Permalink
    Attributes
    protected
  29. final def ne(arg0: AnyRef): Boolean

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

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

    Permalink
    Definition Classes
    AnyRef
  32. final def run(ustate: UState): Unit

    Permalink

    Run the first time.

  33. final def runSuspension(): Unit

    Permalink

    After calling this, call isDone and if that's false call isMakingProgress to understand whether it is done, blocked on the exactly same situation, or blocked elsewhere.

    After calling this, call isDone and if that's false call isMakingProgress to understand whether it is done, blocked on the exactly same situation, or blocked elsewhere.

    This status is needed to implement circular deadlock detection

  34. final def savedUstate: UState

    Permalink
  35. final def setDone: Unit

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

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

    Permalink
    Definition Classes
    Logging
  38. final def setUnblocked(): Unit

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

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

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

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

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

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

    Permalink
    Definition Classes
    Logging

Inherited from Logging

Inherited from Identity

Inherited from Serializable

Inherited from Serializable

Inherited from AnyRef

Inherited from Any

Ungrouped