133d722a9Sopenharmony_ciuse crate::syntax::namespace::Namespace; 233d722a9Sopenharmony_ciuse crate::syntax::Api; 333d722a9Sopenharmony_ci 433d722a9Sopenharmony_ciimpl Api { 533d722a9Sopenharmony_ci pub fn namespace(&self) -> &Namespace { 633d722a9Sopenharmony_ci match self { 733d722a9Sopenharmony_ci Api::CxxFunction(efn) | Api::RustFunction(efn) => &efn.name.namespace, 833d722a9Sopenharmony_ci Api::CxxType(ety) | Api::RustType(ety) => &ety.name.namespace, 933d722a9Sopenharmony_ci Api::Enum(enm) => &enm.name.namespace, 1033d722a9Sopenharmony_ci Api::Struct(strct) => &strct.name.namespace, 1133d722a9Sopenharmony_ci Api::Impl(_) | Api::Include(_) | Api::TypeAlias(_) => Default::default(), 1233d722a9Sopenharmony_ci } 1333d722a9Sopenharmony_ci } 1433d722a9Sopenharmony_ci} 15