Skip to main content

SourceMetadataExport

Struct SourceMetadataExport 

Source
pub struct SourceMetadataExport<'a> {
    pub package: &'a str,
    pub component: &'a str,
    pub executable: Option<&'a str>,
    pub exported_symbol: Option<&'a str>,
    pub package_manifest: &'a str,
    pub source_artifacts: &'a [&'a str],
    pub language: &'a str,
}
Expand description

Source metadata document settings used by the std JSON emitter.

Fields§

§package: &'a str§component: &'a str§executable: Option<&'a str>§exported_symbol: Option<&'a str>§package_manifest: &'a str§source_artifacts: &'a [&'a str]§language: &'a str

phase-308 — the source language the sidecar describes ("rust", "c", "cpp"). It was a hardcoded "rust" literal in the serializer while Rust was the only producer; the C/C++ producer reaches this SAME serializer, so the value has to come from the caller. The consumption side keys on (package, executable) and never branches on it, but the schema declares it and a wrong value is a lie in the artifact.

Implementations§

Source§

impl<'a> SourceMetadataExport<'a>

Source

pub const fn new(package: &'a str, component: &'a str) -> Self

Create export settings with ROS package and component names.

Source

pub const fn language(self, language: &'a str) -> Self

Set the source language ("c" / "cpp"; defaults to "rust").

Source

pub const fn executable(self, executable: &'a str) -> Self

Set executable name.

Source

pub const fn exported_symbol(self, exported_symbol: &'a str) -> Self

Set exported symbol name.

Source

pub const fn package_manifest(self, package_manifest: &'a str) -> Self

Set package manifest path.

Source

pub const fn source_artifacts(self, source_artifacts: &'a [&'a str]) -> Self

Set source artifact paths.

Trait Implementations§

Source§

impl<'a> Clone for SourceMetadataExport<'a>

Source§

fn clone(&self) -> SourceMetadataExport<'a>

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl<'a> Debug for SourceMetadataExport<'a>

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.