# Functions
ByteReadLine reads in a single line from a bufio.Reader and returns it in []byte.
DirExists checks if a directory exists or not.
FileExists checks if a file exists or not.
NewBytesReplacingReader creates a new `*BytesReplacingReader` for a single pair of search:replace token replacement.
NewBytesReplacingReaderEx creates a new `*BytesReplacingReader` for a given BytesReplacer customization.
NewLineCountingReader creates new LineCountingReader wrapping around an input io.Reader.
NewLineEditingReader creates a new LineEditingReader with the default buffer size.
NewLineEditingReader2 creates a new LineEditingReader with custom buffer size.
NewLineNumReportingCsvReader creates a new `*LineNumReportingCsvReader`.
NewScannerByDelim creates a scanner that returns tokens from the source reader separated by a delimiter.
NewScannerByDelim2 creates a scanner that returns tokens from the source reader separated by a delimiter, with consideration of potential presence of escaping sequence.
NewScannerByDelim3 creates a scanner that utilizes given buf to avoid/minimize allocation and returns tokens from the source reader separated by a delimiter, with consideration of potential presence of escaping sequence.
ReadLine reads in a single line from a bufio.Reader and returns it in string.
StripBOM returns a new io.Reader that, if needed, strips away the BOM (byte order marker) of the input io.Reader.
# Constants
ScannerByDelimFlagDefault specifies the most commonly used flags for the scanner.
ScannerByDelimFlagDropDelimInReturn specifies that the delimiter should NOT be included in the return value.
ScannerByDelimFlagEofAsDelim specifies that the scanner should treat EOF as the delimiter as well.
ScannerByDelimFlagEofNotAsDelim specifies that the scanner should NOT treat EOF as the delimiter.
ScannerByDelimFlagIncludeDelimInReturn specifies that the delimiter should be included in the return value.
# Structs
BytesReplacingReader allows transparent replacement of a given token during read operation.
LineCountingReader wraps an io.Reader and reports currently which line the reader is at.
LineEditingReader implements io.Reader interface with a line editing mechanism.
LineNumReportingCsvReader wraps std lib `*csv.Reader` and exposes the current line number.
# Interfaces
BytesReplacer allows customization on how BytesReplacingReader does sizing estimate during initialization/reset and does search and replacement during the execution.
# Type aliases
LineEditFunc edits a line and returns a resulting line.
ScannerByDelimFlag is the type of flags passed to NewScannerByDelim/NewScannerByDelim2.