Skip to main content

split_component_namespace

Function split_component_namespace 

Source
pub fn split_component_namespace(name: &str) -> (Vec<&str>, &str)
Expand description

Split a possibly-namespaced topology name into its ACOMP…: component-id chain (outermost first) and the remaining component-LOCAL name. A segment is peeled only when it matches ACOMP<digits> AND is followed by :, so a bare whole-component reference stays in the LOCAL position — callers detect it with is_component_reference:

  • "ACOMP2:Extrude1|Extrude1_top[0]" → (["ACOMP2"], "Extrude1|…")
  • "ACOMP3:ACOMP1:S1:G20" → (["ACOMP3", "ACOMP1"], "S1:G20")
  • "ACOMP2" → ([], "ACOMP2") (whole-component selection)
  • "ACOMP3:ACOMP1" → (["ACOMP3"], "ACOMP1") (nested whole-component)
  • "S1:G20" → ([], "S1:G20") (sketch-child names never namespace)