3 个版本
0.1.2 | 2020年6月4日 |
---|---|
0.1.1 | 2019年5月19日 |
0.1.0 | 2019年3月16日 |
#25 in #valid
221 每月下载量
用于 10 个 crate (2 直接)
10KB
123 代码行数,不包括注释
html-validation crate 提供了用于验证 HTML 元素和属性的方法。
这个 crate 的原始目标是作为编译时验证 HTML 的过程宏的依赖项使用,但它具有通用性,可以用于其他问题领域。
潜在策略 - 悲观验证
我们可能会让 html-validation crate 具有悲观的本质。
这意味着随着我们开发这个 crate,我们将越来越多地将事物列入黑名单 - 但通常我们默认不认为某件事是无效的,直到我们明确编码它是不允许的。
这意味着你会看到像 is_definitely_invalid_child
这样的方法名 - 提示我们在告诉你我们确定这种关系是不允许的。
随着时间的推移,我们将覆盖越来越多的案例,这应该不会成为问题,但在开始时,这意味着我们的验证实际上不如应该的那样严格。
这种策略背后的原因是它让人们从一开始就可以快速启动,无需等待我们的验证变得完美。一个缺点是,随着我们变得越来越严格,可能会有这样的情况:如果你现在被我们称为无效的东西,你可能需要回过头去调整你的 HTML。
潜在策略 - 乐观验证
在这种情况下,我们会让 html! 在编译时为任何不是肯定有效的事物生成错误。然后会有一个名为 html_unstrict! 的第二个宏,它会更宽容一些。
随着时间的推移,随着我们的验证允许更多案例,人们可以越来越多地使用 html! 而不是 html_loose!
依赖项
~10KB