MCPcopy Create free account
hub / github.com/MegEngine/MegFlow / min_empty_n_f

Function min_empty_n_f

flow-derive/src/actor.rs:49–71  ·  view source on GitHub ↗
((_, ident, ty): ExtractParams)

Source from the content-addressed store, hash-verified

47 }
48 }
49 fn min_empty_n_f((_, ident, ty): ExtractParams) -> TokenStream {
50 if match_last_ty(ty, "Vec") {
51 quote_spanned! {ident.span()=>
52 for chan in &self.#ident {
53 min_empty_n = std::cmp::min(chan.empty_n(), min_empty_n)
54 }
55 }
56 } else if match_last_ty(ty, "HashMap") {
57 quote_spanned! {ident.span()=>
58 for chan in self.#ident.values() {
59 min_empty_n = std::cmp::min(chan.empty_n(), min_empty_n)
60 }
61 }
62 } else if match_last_ty(ty, "DynPorts") {
63 quote_spanned! (ident.span()=>
64 for chan in self.#ident.cache().values() {
65 min_empty_n = std::cmp::min(chan.empty_n(), min_empty_n)
66 }
67 )
68 } else {
69 quote_spanned! (ident.span()=> min_empty_n = std::cmp::min(self.#ident.empty_n(), min_empty_n);)
70 }
71 }
72
73 let send_empty = extract_ports(&input.data, type_name::OUT_T, send_empty_f);
74 let recv_empty_n = extract_ports(&input.data, type_name::IN_T, min_empty_n_f);

Callers

nothing calls this directly

Calls 1

match_last_tyFunction · 0.85

Tested by

no test coverage detected