pub struct Config {Show 15 fields
pub default_database: String,
pub schema_dir: PathBuf,
pub default_delimiter: char,
pub trim_whitespace: bool,
pub ignore_comments: bool,
pub comment_char: Option<char>,
pub data_starts_on: usize,
pub has_header: bool,
pub quote_char: Option<char>,
pub skip_empty_lines: bool,
pub quoted_fields: bool,
pub strip_quotes: bool,
pub default_output_format: String,
pub ignore_errors: bool,
pub databases: HashMap<String, DatabaseConfig>,
}Expand description
DDB configuration structure
Fields§
§default_database: StringName of the default database
schema_dir: PathBufDirectory containing SQL schema files
default_delimiter: charDefault field delimiter
trim_whitespace: boolTrim whitespace from fields
ignore_comments: boolIgnore comment lines
comment_char: Option<char>Comment character (lines starting with this are ignored)
data_starts_on: usizeLine number where data starts (0 = first line)
has_header: boolWhether the first data line is a header
quote_char: Option<char>Quote character for escaping delimiters
skip_empty_lines: boolSkip empty lines
quoted_fields: boolWhether fields are quoted
strip_quotes: boolRemove quotes from quoted fields
default_output_format: StringDefault output format (table, json, yaml, csv)
ignore_errors: boolIgnore errors (continue processing on errors)
databases: HashMap<String, DatabaseConfig>Databases configuration
Implementations§
Source§impl Config
impl Config
Sourcepub fn load() -> Result<Self>
pub fn load() -> Result<Self>
Load configuration from environment or default locations Checks in order:
- DDB_CONFIG environment variable
- .ddb/config.yaml in current directory
- ~/.ddb/config.yaml
- Returns default config if none found
Sourcepub fn default() -> Self
pub fn default() -> Self
Create a default configuration Also checks DDB_SCHEMA_DIR environment variable
Sourcepub fn get_schema_dir(&self, database: &str) -> PathBuf
pub fn get_schema_dir(&self, database: &str) -> PathBuf
Get the schema directory for a database
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Config
impl<'de> Deserialize<'de> for Config
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for Config
impl RefUnwindSafe for Config
impl Send for Config
impl Sync for Config
impl Unpin for Config
impl UnsafeUnpin for Config
impl UnwindSafe for Config
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more