View Source Csv2sql.File (Csv2sql v0.1.0)

A file struct that contains information about a csv file

Summary

Types

@type csv_col_types_list() :: [{String.t(), String.t()}]
@type db_result_types() :: MyXQL.Result.t() | Postgrex.Result.t()
@type file_status() :: :pending | :analyze | :loading | :done | :failure
@type files_map() :: %{required(String.t()) => File.t()}
Link to this type

supported_db_data_types()

View Source
@type supported_db_data_types() ::
  String.t() | number() | boolean() | Date.t() | DateTime.t() | nil
@type t() :: %Csv2sql.File{
  column_types: csv_col_types_list() | nil,
  existing_db_row_count: non_neg_integer(),
  name: String.t(),
  path: String.t(),
  producer_pid: pid(),
  row_count: non_neg_integer(),
  rows_processed: non_neg_integer(),
  size: non_neg_integer(),
  status: file_status()
}

Csv2sql File struct

@type type_map() :: %{
  is_empty: boolean(),
  is_date: boolean(),
  is_datetime: boolean(),
  is_boolean: boolean(),
  is_integer: boolean(),
  is_float: boolean(),
  is_text: boolean(),
  max_data_length: non_neg_integer()
}