Packages

trait BitsCharset extends Serializable

Charset enhanced with features allowing it to work with Daffodil's Bit-wise DataInputStream and DataOutputStream.

Daffodil uses BitsCharset as its primary abstraction for dealing with character sets, which enables it to support character sets where the code units are smaller than 1 byte.

Note that BitsCharset is NOT derived from java.nio.charset.Charset, nor are BitsCharsetDecoder or BitsCharsetEncoder derived from java.nio.charset.CharsetDecoder or CharsetEncoder respectively. This is partly because these Java classes have many final methods that make it impossible for us to implement what we need by extending them. But more importantly, we need much more low level control about how characters are decoded what what kind of information is returned during decode operations. Getting that information with the limitations of the java Charset API become an encumbrance. Replacing with our own Charset decoders grealy simplifies the code and allows for future enhancements as needed.

Linear Supertypes
Serializable, Serializable, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. BitsCharset
  2. Serializable
  3. Serializable
  4. AnyRef
  5. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Abstract Value Members

  1. abstract def bitWidthOfACodeUnit: Int
  2. abstract def mandatoryBitAlignment: Int
  3. abstract def maybeFixedWidth: MaybeInt
  4. abstract def name: String
  5. abstract def newDecoder(): BitsCharsetDecoder
  6. abstract def newEncoder(): BitsCharsetEncoder
  7. abstract def requiredBitOrder: BitOrder

Concrete Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  6. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  7. final def equals(other: Any): Boolean
    Definition Classes
    BitsCharset → AnyRef → Any
  8. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  9. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  10. final def hashCode(): Int
    Definition Classes
    BitsCharset → AnyRef → Any
  11. def isEbcdicFamily(): Boolean

    Used to determine if zoned numbers use ascii or ebcdic conventions for overpunched signs.

    Used to determine if zoned numbers use ascii or ebcdic conventions for overpunched signs. This determines whether the textZonedSignStyle property is needed or not.

    Override in any EBCDIC family charset definition.

    returns

    true if the charset is an EBCDIC family charset.

  12. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  13. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  14. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  15. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  16. final def padCharWidthInBits: Int
  17. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  18. def toString(): String
    Definition Classes
    AnyRef → Any
  19. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  20. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  21. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()

Inherited from Serializable

Inherited from Serializable

Inherited from AnyRef

Inherited from Any

Ungrouped