pub struct ComponentExtensions {
pub properties: Vec<Property>,
pub annotations: Vec<Annotation>,
pub raw: Option<Value>,
pub source_json: Option<Box<Value>>,
}Expand description
Component-level extensions
Fields§
§properties: Vec<Property>Properties from CycloneDX
annotations: Vec<Annotation>Annotations from SPDX
raw: Option<Value>Raw extension data.
Occupied by the SPDX-3 AI-profile bridge (parsers::spdx3), which mirrors
non-typed AI signals here in CycloneDX mlModel.modelCard layout so the
AI-readiness scorer can read them. Do NOT repurpose this for round-trip
preservation — use source_json instead.
source_json: Option<Box<Value>>Verbatim source JSON object for this component, captured for cross-format conversion fidelity.
Opt-in and convert-only: populated solely when the convert/--preserve
path is active (see [crate::serialization::emit]), keeping it out of the
normal parse hot path so memory stays bounded. Boxed to keep
ComponentExtensions small when the slot is empty (the common case),
and skipped on serialization when absent.
Trait Implementations§
Source§impl Clone for ComponentExtensions
impl Clone for ComponentExtensions
Source§fn clone(&self) -> ComponentExtensions
fn clone(&self) -> ComponentExtensions
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ComponentExtensions
impl Debug for ComponentExtensions
Source§impl Default for ComponentExtensions
impl Default for ComponentExtensions
Source§fn default() -> ComponentExtensions
fn default() -> ComponentExtensions
Source§impl<'de> Deserialize<'de> for ComponentExtensions
impl<'de> Deserialize<'de> for ComponentExtensions
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>,
Auto Trait Implementations§
impl Freeze for ComponentExtensions
impl RefUnwindSafe for ComponentExtensions
impl Send for ComponentExtensions
impl Sync for ComponentExtensions
impl Unpin for ComponentExtensions
impl UnsafeUnpin for ComponentExtensions
impl UnwindSafe for ComponentExtensions
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
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>
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>
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