Lines Matching refs:name
38 Api::Enum(enm) => !out.types.cxx.contains(&enm.name.rust),
53 Api::Struct(strct) => write_struct_decl(out, &strct.name),
55 Api::CxxType(ety) => write_struct_using(out, &ety.name),
56 Api::RustType(ety) => write_struct_decl(out, &ety.name),
86 Api::Struct(strct) if !structs_written.contains(&strct.name.rust) => {
88 if !out.types.cxx.contains(&strct.name.rust) {
91 .get(&strct.name.rust)
96 structs_written.insert(&next.name.rust);
97 if next.name.rust == strct.name.rust {
104 if !out.types.cxx.contains(&enm.name.rust) {
113 .get(&ety.name.rust)
131 if let Some(reasons) = out.types.required_trivial.get(&ety.name.rust) {
176 let qualified = strct.name.to_fully_qualified();
183 let link_name = mangle::operator(&strct.name, "hash");
185 for name in &strct.name.namespace {
186 write!(out, "{}::", name);
253 out.set_namespace(&strct.name.namespace);
254 let guard = format!("CXXBRIDGE1_STRUCT_{}", strct.name.to_symbol());
258 writeln!(out, "struct {} final {{", strct.name.cxx);
264 writeln!(out, "{};", field.name.cxx);
276 let local_name = method.name.cxx.to_string();
289 strct.name.cxx,
294 strct.name.cxx,
302 strct.name.cxx,
307 strct.name.cxx,
312 strct.name.cxx,
317 strct.name.cxx,
338 write!(out, "enum class {} : ", enm.name.cxx);
348 out.set_namespace(&ety.name.namespace);
349 let guard = format!("CXXBRIDGE1_STRUCT_{}", ety.name.to_symbol());
358 ety.name.cxx,
368 let local_name = method.name.cxx.to_string();
377 writeln!(out, " ~{}() = delete;", ety.name.cxx);
398 out.set_namespace(&enm.name.namespace);
399 let guard = format!("CXXBRIDGE1_ENUM_{}", enm.name.to_symbol());
403 write!(out, "enum class {} : ", enm.name.cxx);
408 writeln!(out, " {} = {},", variant.name.cxx, variant.discriminant);
420 out.set_namespace(&enm.name.namespace);
425 enm.name.cxx,
427 write!(out, "static_assert(sizeof({}) == sizeof(", enm.name.cxx);
436 enm.name.cxx, variant.name.cxx, variant.discriminant,
475 let id = alias.name.to_fully_qualified();
501 trivial::as_what(&alias.name, reasons),
506 out.set_namespace(&strct.name.namespace);
510 let link_name = mangle::operator(&strct.name, "eq");
514 link_name, strct.name.cxx,
518 let link_name = mangle::operator(&strct.name, "ne");
522 link_name, strct.name.cxx,
528 let link_name = mangle::operator(&strct.name, "lt");
532 link_name, strct.name.cxx,
535 let link_name = mangle::operator(&strct.name, "le");
539 link_name, strct.name.cxx,
543 let link_name = mangle::operator(&strct.name, "gt");
547 link_name, strct.name.cxx,
550 let link_name = mangle::operator(&strct.name, "ge");
554 link_name, strct.name.cxx,
561 let link_name = mangle::operator(&strct.name, "hash");
565 link_name, strct.name.cxx,
577 out.set_namespace(&strct.name.namespace);
584 strct.name.cxx,
586 let link_name = mangle::operator(&strct.name, "eq");
594 strct.name.cxx,
599 let link_name = mangle::operator(&strct.name, "ne");
610 strct.name.cxx,
612 let link_name = mangle::operator(&strct.name, "lt");
620 strct.name.cxx,
622 let link_name = mangle::operator(&strct.name, "le");
630 strct.name.cxx,
635 let link_name = mangle::operator(&strct.name, "gt");
644 strct.name.cxx,
649 let link_name = mangle::operator(&strct.name, "ge");
657 out.set_namespace(&ety.name.namespace);
660 let link_name = mangle::operator(&ety.name, "sizeof");
663 let link_name = mangle::operator(&ety.name, "alignof");
674 out.set_namespace(&ety.name.namespace);
677 let link_name = mangle::operator(&ety.name, "sizeof");
681 ety.name.cxx,
687 let link_name = mangle::operator(&ety.name, "alignof");
691 ety.name.cxx,
705 out.set_namespace(&efn.name.namespace);
720 out.types.resolve(&receiver.ty).name.to_fully_qualified(),
733 write!(out, "const *{}", arg.name.cxx);
736 write!(out, "const *{}", arg.name.cxx);
753 None => write!(out, "(*{}$)(", efn.name.rust),
757 out.types.resolve(&receiver.ty).name.to_fully_qualified(),
758 efn.name.rust,
775 None => write!(out, "{}", efn.name.to_fully_qualified()),
779 out.types.resolve(&receiver.ty).name.to_fully_qualified(),
780 efn.name.cxx,
816 None => write!(out, "{}$(", efn.name.rust),
817 Some(_) => write!(out, "(self.*{}$)(", efn.name.rust),
825 write!(out, "::from_raw({})", arg.name.cxx);
828 write!(out, "({})", arg.name.cxx);
834 arg.name.cxx,
839 write!(out, "(::rust::unsafe_bitcopy, *{})", arg.name.cxx);
842 write!(out, "::std::move(*{})", arg.name.cxx);
844 write!(out, "{}", arg.name.cxx);
867 let var = &arg.name;
886 out.set_namespace(&efn.name.namespace);
913 out.types.resolve(&receiver.ty).name.to_fully_qualified(),
955 out.set_namespace(&efn.name.namespace);
957 None => efn.name.cxx.to_string(),
960 out.types.resolve(&receiver.ty).name.cxx,
961 efn.name.cxx,
984 write!(out, "{}", arg.name.cxx);
1031 writeln!(out, "> {}$(::std::move({0}));", arg.name.cxx);
1093 write!(out, "{}", arg.name.cxx);
1216 write!(out, "{}", arg.name.cxx);
1226 out.types.resolve(ident).name.to_fully_qualified(),
1364 types.resolve(self).name.to_fully_qualified()
1385 types.resolve(self).name.to_symbol()
1436 let inner = resolve.name.to_fully_qualified();
1437 let instance = resolve.name.to_symbol();
1507 let inner = resolve.name.to_fully_qualified();
1508 let instance = resolve.name.to_symbol();
1656 UniquePtr::Ident(ty) => &out.types.resolve(ty).name.cxx,
1746 let inner = resolve.name.to_fully_qualified();
1747 let instance = resolve.name.to_symbol();
1821 let inner = resolve.name.to_fully_qualified();
1822 let instance = resolve.name.to_symbol();