3 个版本

0.1.2 2020年6月4日
0.1.1 2019年5月19日
0.1.0 2019年3月16日

#25 in #valid

Download history 114/week @ 2024-03-11 111/week @ 2024-03-18 85/week @ 2024-03-25 154/week @ 2024-04-01 42/week @ 2024-04-08 43/week @ 2024-04-15 53/week @ 2024-04-22 54/week @ 2024-04-29 74/week @ 2024-05-06 55/week @ 2024-05-13 48/week @ 2024-05-20 54/week @ 2024-05-27 65/week @ 2024-06-03 41/week @ 2024-06-10 54/week @ 2024-06-17 57/week @ 2024-06-24

221 每月下载量
用于 10 个 crate (2 直接)

MIT/Apache

10KB
123 代码行数,不包括注释

html-validation crate 提供了用于验证 HTML 元素和属性的方法。

这个 crate 的原始目标是作为编译时验证 HTML 的过程宏的依赖项使用,但它具有通用性,可以用于其他问题领域。

潜在策略 - 悲观验证

我们可能会让 html-validation crate 具有悲观的本质。

这意味着随着我们开发这个 crate,我们将越来越多地将事物列入黑名单 - 但通常我们默认不认为某件事是无效的,直到我们明确编码它是不允许的。

这意味着你会看到像 is_definitely_invalid_child 这样的方法名 - 提示我们在告诉你我们确定这种关系是不允许的。

随着时间的推移,我们将覆盖越来越多的案例,这应该不会成为问题,但在开始时,这意味着我们的验证实际上不如应该的那样严格。

这种策略背后的原因是它让人们从一开始就可以快速启动,无需等待我们的验证变得完美。一个缺点是,随着我们变得越来越严格,可能会有这样的情况:如果你现在被我们称为无效的东西,你可能需要回过头去调整你的 HTML。

潜在策略 - 乐观验证

在这种情况下,我们会让 html! 在编译时为任何不是肯定有效的事物生成错误。然后会有一个名为 html_unstrict! 的第二个宏,它会更宽容一些。

随着时间的推移,随着我们的验证允许更多案例,人们可以越来越多地使用 html! 而不是 html_loose!

依赖项

~10KB