因特质滥用而生锈?

Rust From trait abuse?

假设我有一个 object 结构,我想创建 From config 结构,这似乎是合理的——这是从一种结构类型到另一种结构类型的转换。

然后假设我想从 Path?

创建后者 config 结构

意思是trait实现以Path为参数,打开YAML文件,解析,返回config结构

那会有多少虐待,或者这会是一件完全正常且可以接受的事情吗?

我肯定在oss代码中看到了第一个traits的使用案例,但是没有看到后面的

Meaning from trait implementation taking Path as the parameter, opening yaml file, parsing it, and returning config struct.

How much of an abuse will that be, or will it be completely normal and acceptable thing to do?

严重滥用:

  1. 整个过程充满了失败点,但是From不可失败的

  2. FromTryFrom 都是为 转化而设计的 。您的用例与转换无关,如果不使术语 完全无意义 .

    就不能调用将路径转换为配置对象

从根本上说……这真的没有意义吗? From/TryFrom 的要点是用作通用边界,例如一个函数可以接受任何可以转换为它知道的具体类型的东西。 Into<Config> 绑定有多大用处?我猜“不是很”。