pub struct StreamingConfig {
pub threshold_bytes: u64,
pub force: bool,
pub disabled: bool,
pub stream_stdin: bool,
}Expand description
Streaming configuration for memory-efficient processing of large SBOMs.
When streaming is enabled, the tool uses streaming parsers and reporters to avoid loading entire SBOMs into memory. This is essential for SBOMs with thousands of components.
Fields§
§threshold_bytes: u64Enable streaming mode automatically for files larger than this threshold (in bytes).
Default: 10 MB (10_485_760 bytes)
force: boolForce streaming mode regardless of file size. Useful for testing or when processing stdin.
disabled: boolDisable streaming mode entirely (always load full SBOMs into memory).
stream_stdin: boolEnable streaming for stdin input (since size is unknown). Default: true
Implementations§
Source§impl StreamingConfig
impl StreamingConfig
Sourcepub fn should_stream(&self, file_size: Option<u64>, is_stdin: bool) -> bool
pub fn should_stream(&self, file_size: Option<u64>, is_stdin: bool) -> bool
Check if streaming should be used for a file of the given size.
Sourcepub const fn with_threshold_mb(self, mb: u64) -> Self
pub const fn with_threshold_mb(self, mb: u64) -> Self
Set the threshold in megabytes.
Trait Implementations§
Source§impl Clone for StreamingConfig
impl Clone for StreamingConfig
Source§fn clone(&self) -> StreamingConfig
fn clone(&self) -> StreamingConfig
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for StreamingConfig
impl Debug for StreamingConfig
Source§impl Default for StreamingConfig
impl Default for StreamingConfig
Source§impl<'de> Deserialize<'de> for StreamingConfigwhere
StreamingConfig: Default,
impl<'de> Deserialize<'de> for StreamingConfigwhere
StreamingConfig: Default,
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
Source§impl JsonSchema for StreamingConfig
impl JsonSchema for StreamingConfig
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Returns a string that uniquely identifies the schema produced by this type. Read more
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Generates a JSON Schema for this type. Read more
Source§fn inline_schema() -> bool
fn inline_schema() -> bool
Whether JSON Schemas generated for this type should be included directly in parent schemas,
rather than being re-used where possible using the
$ref keyword. Read moreAuto Trait Implementations§
impl Freeze for StreamingConfig
impl RefUnwindSafe for StreamingConfig
impl Send for StreamingConfig
impl Sync for StreamingConfig
impl Unpin for StreamingConfig
impl UnsafeUnpin for StreamingConfig
impl UnwindSafe for StreamingConfig
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,
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