Rust 中的命名参数,如果你想要它们

主要观点:展示了 Rust 中Target结构体及其构建器Builder的实现,包括通过方法链式调用构建对象,还介绍了使用宏T!tryT!来更方便地创建目标对象,同时提到了实际中构建器可能失败并使用Result类型处理,以及讨论了使用宏的优缺点。

关键信息:

  • Target结构体包含foo(布尔值)、baru64)、bazi64)字段。
  • Builder结构体用于构建Target,通过new方法创建初始对象,foobarbaz方法分别设置对应字段,build方法构建Target对象。
  • T!通过命名参数构建TargettryT!用于尝试构建Target并处理可能的错误。

重要细节:

  • Builder构建器的方法链式调用示例:let t = Builder::new().foo(true).bar(2).baz(3).build();
  • T!宏的使用示例:let t = T!(foo=true, bar,2, baz=3);,可以只传递需要的字段。
  • TryBuilder结构体用于尝试构建Targetbuild方法返回Result<Target, String>tryT!宏自动处理?操作。
  • 提到使用宏的缺点,如一般的晦涩性和调试问题,以及个人口味对使用宏的影响。
阅读 13
0 条评论