ytsaurus-yson 0.2.0

YSON serializer and deserializer for YTsaurus (text and binary). Fork of ss123she/yson-rs @ ba2044c
Documentation
#![allow(dead_code)]

use serde::{Deserialize, Serialize};
use ytsaurus_yson::WithAttributes;

#[derive(Serialize, Deserialize, PartialEq, Debug, Clone)]
pub(crate) struct User {
    pub(crate) name: String,
    pub(crate) age: u32,
}

#[derive(Serialize, Deserialize, PartialEq, Debug, Clone)]
pub(crate) struct Meta {
    pub(crate) active: bool,
    pub(crate) role: String,
}

#[derive(Serialize, Deserialize, PartialEq, Debug, Clone)]
pub(crate) enum UserStatus {
    Pending,
    Active,
    Banned(String),
    Custom { code: u32, reason: String },
}

#[derive(Serialize, Deserialize, PartialEq, Debug, Clone)]
pub(crate) struct ComplexEntity {
    pub(crate) id: u64,
    pub(crate) user: WithAttributes<User, Meta>,
    pub(crate) tags: Vec<String>,
    pub(crate) status: Option<UserStatus>,
}