[英]Rust From trait abuse?
假设我有一个object结构,我想从配置结构创建,这似乎是合理的——这是从一种结构类型到另一种结构类型的转换。
然后假设我想从Path创建后一个配置结构?
以 Path 作为参数的 trait 实现的含义,打开 YAML 文件,解析它,并返回配置结构。
这将是多少滥用,或者这是一件完全正常且可以接受的事情?
我肯定在 oss 代码中看到了第一个特征的使用案例,但没有看到后一个。
以 Path 作为参数的 trait 实现的含义,打开 yaml 文件,解析它,并返回配置结构。
这将是多大程度的滥用,或者这将是完全正常且可以接受的事情吗?
这是一个严重的滥用:
整个过程充满了失败点,但From
是non-failable 。
From
和TryFrom
都是为转换而设计的。 您的用例与转换无关,您不能称将路径转换为配置 object 而不使该术语完全没有意义。
从根本上说……这真的没有意义吗? From
/ TryFrom
的要点是用作通用边界,以便例如 function 可以采用任何可转换为/从它知道的具体类型转换的东西。 Into<Config>
绑定会有多大用处? 我猜“不是很”。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.