class DataDumper extends AnyRef
Hex/Bits and text dump formats for debug/trace purposes.
By definition this is a dump, so doesn't know much about where the fields in the data are. (To do that you'd need a format description language, like DFDL, but this is here to help debug DFDL descriptions, so it really cannot exploit any information about the data format)
- Alphabetic
- By Inheritance
- DataDumper
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
- new DataDumper()
Type Members
-
sealed
trait
BinaryKind extends Kind
- Attributes
- protected
-
sealed
trait
Direction extends AnyRef
- Attributes
- protected
-
sealed
trait
HexKind extends BinaryKind
- Attributes
- protected
-
sealed
trait
Kind extends AnyRef
What kind of dump do you want? Text only - no hex will be displayed.
What kind of dump do you want? Text only - no hex will be displayed. Binary only - do you want hex? or binary bits? Mixed - show both hex/bits and text side by side
-
sealed
trait
LTR extends Direction
- Attributes
- protected
- case class MixedHexLTR(optCharset: Option[String] = None) extends TextKind with HexKind with LTR with Product with Serializable
- case class MixedHexRTL(optCharset: Option[String] = None) extends TextKind with HexKind with RTL with Product with Serializable
-
sealed
trait
RTL extends Direction
- Attributes
- protected
-
sealed
class
TextKind extends Kind
- Attributes
- protected
- case class TextOnly(optCharset: Option[String] = None) extends TextKind with Product with Serializable
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
- def convertBitsToBytesUnits(startBitAddress0b: Long, lengthInBits: Long): (Long, Int, Long)
- val defaultMaxLineLength: Int
-
def
dump(kind: Kind, shamStartBitAddress0b: Long, lengthInBits: Int, byteBuffer: ByteBuffer, maxLineLength: Int = defaultMaxLineLength, includeHeadingLine: Boolean = true, indicatorInfo: Option[(Long, Int)] = None): Seq[String]
A dump is a sequence of dump lines.
A dump is a sequence of dump lines.
An optional first line is a header that numbers the bits/bytes An optional indicator line uses draw-characters to point at the significant part of the data - e.g., where in the dump the current element is. The data lines follow. They contain up to 3 sections (each of which is optional) an address, a hex/binary dump, a text dump.
If the kind includes charset that charset is used to display text. Decode errors will display as the Unicode replacement character. If no charset then text will be displayed as iso-8859-1, augmented by using glyph characters for the control C0 and C1 and any other non-glyph codepoint.
indicator info is a start position and length for the "region of interest". The units are in bits.
The shamStartBitAddress0b is the location where the data in the byteBuffer starts. E.g., the byte at byteBuffer.get(0) is from the data stream at the shamStartBitAddress0b.
The byte source is a window into the data stream.
-
def
dumpTextLine(maxLineLen: Int, startByteAddress0b: Long, lengthInBytesRequested: Int, byteBuffer: ByteBuffer, optEncodingName: Option[String] = None, indicatorInfoInBytes: Option[(Long, Int)] = None): Seq[String]
If displaying ONLY text, then we just display one long line and replace any whitespace or non-glyph characters with glyph characters.
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- var nPadBytesFromPriorLine: Int
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- var paddingFromPriorLine: String
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()