Skip to main content

resolve_name

Function resolve_name 

Source
pub fn resolve_name<'a, I>(
    source: &str,
    node_name: &str,
    namespace: &str,
    remaps: I,
) -> Result<String<nros_node::::names::ResolvedName::{constant#0}>, ()>
where I: IntoIterator<Item = (&'a str, &'a str)>,
Expand description

Phase 305 W3 (issue 0255) — the ONE name-resolution seam: ROS 2 source-name expansion (~/relative → FQN, ns=/ collapse) + launch remap substitution (exact-FQN match, first rule wins; no wildcards). Implemented in nros_node::names so both the Rust ExecutorSink and the C-ABI executor-side remap table share one lowering; re-exported here next to SourceNameKind as the source-metadata-level entry point. Resolve a source-level entity name through launch remap rules: expand the source name AND each rule’s from to fully-qualified form, compare exact, substitute the (also expanded) to of the first matching rule; no match → the expanded source name. A rule whose from/to fails to expand is skipped (never masks the name expansion itself).