我有一个包含5个元素的元组,我想将它们中的每一个都包含在quote!{...}
块中。
我尝试了几种方法直接访问quote!{}
块中的字段,但都没有成功:
let tuple = (1, true, -3, 4., "five");
quote! { #tuple.0 }; // error
quote! { #{tuple.0} }; // error
quote! { tuple.#0 }; // error
对我来说唯一有效的方法是将每个元素分配给不同的变量,然后分别插入它们:
let tuple = (1, true, -3, 4., "five");
let tuple_0 = tuple.0;
let tuple_1 = tuple.1;
let tuple_2 = tuple.2;
let tuple_3 = tuple.3;
let tuple_4 = tuple.4;
quote! { #tuple_0, #tuple_1, #tuple_2, #tuple_3, #tuple_4 };
虽然有效,但这种方式比较繁琐,有没有更好的方法来实现这一点?
1条答案
按热度按时间vlju58qv1#
不需要。你需要给变量赋值。但是你可以使用解构: