pub struct ScanRequest {
pub project_dir: PathBuf,
pub scan_path: String,
pub format: SourceFormat,
pub paths: Vec<String>,
pub toml_rows_key: Option<String>,
pub partition_by: Vec<String>,
pub require_partitions: HashMap<String, String>,
pub path_glob: Vec<String>,
pub inject_source_path: bool,
pub roots: HashMap<String, String>,
pub protobuf_max_payload_bytes: u64,
}Expand description
Scan request derived from staging frontmatter + project root.
Fields§
§project_dir: PathBuf§scan_path: String§format: SourceFormat§paths: Vec<String>jshift / projection paths (JSONL selective extract).
toml_rows_key: Option<String>TOML array-of-tables key (optional).
partition_by: Vec<String>Hive-style partition keys to inject as Utf8 columns from the file path.
require_partitions: HashMap<String, String>Keep only files whose hive path matches these partition values.
path_glob: Vec<String>Filename / relative globs under scan_path (OR). Empty = all format matches.
inject_source_path: boolInject _source_path column (absolute path of the bronze file).
roots: HashMap<String, String>Named roots for $name expansion in scan_path (from project config).
protobuf_max_payload_bytes: u64Max bytes for one opaque protobuf file (from scan.protobuf_max_payload_bytes).
Implementations§
Source§impl ScanRequest
impl ScanRequest
pub fn from_frontmatter( project_dir: impl AsRef<Path>, fm: &StagingFrontmatter, ) -> Result<Self>
pub fn from_frontmatter_with_roots( project_dir: impl AsRef<Path>, fm: &StagingFrontmatter, roots: HashMap<String, String>, ) -> Result<Self>
pub fn from_frontmatter_with_config( project_dir: impl AsRef<Path>, fm: &StagingFrontmatter, roots: HashMap<String, String>, scan_cfg: &ScanConfig, ) -> Result<Self>
pub fn resolved_path(&self) -> Result<PathBuf>
Trait Implementations§
Source§impl Clone for ScanRequest
impl Clone for ScanRequest
Source§fn clone(&self) -> ScanRequest
fn clone(&self) -> ScanRequest
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for ScanRequest
impl RefUnwindSafe for ScanRequest
impl Send for ScanRequest
impl Sync for ScanRequest
impl Unpin for ScanRequest
impl UnsafeUnpin for ScanRequest
impl UnwindSafe for ScanRequest
Blanket Implementations§
impl<T> Allocation for T
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Downcast for T
impl<T> Downcast for T
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