libtrackerboy/private/ioblocks

  Source   Edit

DO NOT INCLUDE THIS MODULE!

This module is intended to only be used internally by trackerboy modules.

take me back home ↩

Types

BlockId = uint32
  Source   Edit
BlockSize = uint32
  Source   Edit
InputBlock {.requiresInit.} = object
  stream: Stream
  avail: int
  size: int
  Source   Edit
OutputBlock {.requiresInit.} = object
  stream: Stream
  lengthPos: int
  size: int
  Source   Edit

Procs

proc begin(b: var InputBlock): BlockId {....raises: [IOError, OSError],
    tags: [ReadIOEffect].}
  Source   Edit
proc begin(b: var OutputBlock; blockId: BlockId) {....raises: [IOError, OSError],
    tags: [WriteIOEffect].}
  Source   Edit
proc finish(b: var OutputBlock) {....raises: [IOError, OSError],
                                  tags: [WriteIOEffect].}
  Source   Edit
func init(T: typedesc[InputBlock]; stream: Stream): InputBlock
  Source   Edit
func init(T: typedesc[OutputBlock]; stream: Stream): OutputBlock
  Source   Edit
func isFinished(b: InputBlock): bool {....raises: [], tags: [].}
  Source   Edit
proc read[T: not openArray](b: var InputBlock; val: var T): bool
  Source   Edit
proc read[T](b: var InputBlock; buf: var openArray[T]): bool
  Source   Edit
proc readData(b: var InputBlock; data: pointer; size: Natural): bool {.
    ...raises: [IOError, OSError], tags: [ReadIOEffect].}
  Source   Edit
func size(ib: InputBlock): int {....raises: [], tags: [].}
  Source   Edit
func toBlockId(str: string): BlockId {.compileTime, ...raises: [], tags: [].}
  Source   Edit
proc write[T: not openArray](b: var OutputBlock; data: T)
  Source   Edit
proc write[T](b: var OutputBlock; data: openArray[T])
  Source   Edit
proc writeData(b: var OutputBlock; data: pointer; size: Natural) {.
    ...raises: [IOError, OSError], tags: [WriteIOEffect].}
  Source   Edit