techcloud

techcloud

Схемы, правила и понятные ошибки для Rust.

Версия 2.6.1 Rust 1.74+ Лицензия Apache-2.0 crates.io

techcloud — небольшая библиотека валидации для Rust. Правила комбинируются, ошибки собираются списком, а не выбрасываются по одной, а сообщения готовы к показу пользователю.

cargo add techcloud

Пример

use techcloud::{Schema, Error};

#[tokio::main]
async fn main() -> Result<(), Error> {
    let schema = Schema::builder()
        .allow_unknown(false)
        .max_errors(100)
        .build()?;

    schema.field("email", "required|email").await?;

    let items = schema.validate(b"{\"email\":\"ada@example.com\"}").await?;
    println!("{items:?}");
    Ok(())
}

Возможности

Документация

УстановкаТребования, установка и сборка из исходников. Первые шагиПервая программа и основные понятия. РецептыЗаконченные программы для типичных задач. КонфигурацияВсе параметры, их типы и значения по умолчанию. Справочник APIСигнатуры и поведение публичного API. БенчмаркиБенчмарки и советы по скорости. ТестированиеКак тестировать код, использующий библиотеку. ДиагностикаЧастые проблемы и их решения. FAQКороткие ответы на частые вопросы. Обновление версийКак переходить между мажорными версиями. РелизыИстория релизов. БезопасностьПоддерживаемые версии и сообщения об уязвимостях. СообществоГде задать вопрос и как связаться с авторами.