Versions in this module Expand all Collapse all v1 v1.2.1 Oct 17, 2023 v1.2.0 Oct 5, 2023 Changes in this version + var ErrChannelIsClosed = errors.New("channel is closed") + var ErrEmptyCSVFile = errors.New("empty csv file given") + var ErrNoStructTags = errors.New("no csv struct tags found") + func CSVToMap(in io.Reader) (map[string]string, error) + func UnmarshalCSVToMap(r *csv.Reader, out interface{}) error + type ErrorHandler func(*csv.ParseError) bool + type NoMarshalFuncError struct + func (e NoMarshalFuncError) Error() string + type NoUnmarshalFuncError struct + func (e NoUnmarshalFuncError) Error() string + type Normalizer func(string) string + type TypeMarshaller interface + MarshalCSV func() (string, error) + type TypeUnmarshalCSVWithFields interface + UnmarshalCSVWithFields func(key, value string) error + type TypeUnmarshaller interface + UnmarshalCSV func(string) error + type XsvRead struct + ErrorHandler ErrorHandler + FailIfDoubleHeaderNames bool + FailIfUnmatchedStructTags bool + NameNormalizer Normalizer + OnRecord func(T) T + ShouldAlignDuplicateHeadersWithStructFieldOrder bool + TagName string + TagSeparator string + func NewXsvRead() *XsvRead[T] + func (x *XsvRead[T]) SetByteReader(byte []byte) (xr *XsvReader[T]) + func (x *XsvRead[T]) SetFileReader(file *os.File) (xr *XsvReader[T]) + func (x *XsvRead[T]) SetReader(r *csv.Reader) (xr *XsvReader[T]) + func (x *XsvRead[T]) SetStringReader(string string) (xr *XsvReader[T]) + type XsvReader struct + func NewXsvReader(xsvRead XsvRead[T]) *XsvReader[T] + func (r *XsvReader[T]) Lazy() *XsvReader[T] + func (r *XsvReader[T]) ReadEach(c chan T) error + func (r *XsvReader[T]) ReadEachWithoutHeaders(c chan T) error + func (r *XsvReader[T]) ReadTo(out *[]T) error + func (r *XsvReader[T]) ReadToCallback(f func(s T) error) error + func (r *XsvReader[T]) ReadToWithoutHeaders(out *[]T) error + func (r *XsvReader[T]) ToChanMaps(c chan<- map[string]string) error + func (r *XsvReader[T]) ToMap() ([]map[string]string, error) + type XsvWrite struct + HeaderModifier map[string]string + OmitHeaders bool + OnRecord func(T) T + SelectedColumns []string + SortOrder []int + TagName string + TagSeparator string + func NewXsvWrite() XsvWrite[T] + func (x *XsvWrite[T]) SetBufferWriter(buffer *bytes.Buffer) (xw *XsvWriter[T]) + func (x *XsvWrite[T]) SetFileWriter(file *os.File) (xw *XsvWriter[T]) + func (x *XsvWrite[T]) SetWriter(writer *csv.Writer) (xw *XsvWriter[T]) + type XsvWriter struct + func NewXsvWriter(xsvWrite XsvWrite[T]) *XsvWriter[T] + func (xw *XsvWriter[T]) Comma(comma rune) *XsvWriter[T] + func (xw *XsvWriter[T]) UseCRLF(useCRLF bool) *XsvWriter[T] + func (xw *XsvWriter[T]) Write(data []T) error + func (xw *XsvWriter[T]) WriteFromChan(dataChan chan T) error