pub trait ToJson {
    fn to_json_string(&self) -> Result<String, Error>;
    fn to_json_string_pretty(&self) -> Result<String, Error>;
    fn to_json_value(&self) -> Result<Value, Error>;
    fn to_json_writer<W>(&self, writer: W) -> Result<(), Error>
    where
        W: Write
; fn to_json_writer_pretty<W>(&self, writer: W) -> Result<(), Error>
    where
        W: Write
; }

Required Methods

Convert to json string.

use serde::Serialize;
use serde_valid::json::ToJson;
use serde_valid::Validate;

#[derive(Debug, Validate, Serialize)]
struct TestStruct {
    #[validate(maximum = 100)]
    val: i32,
}
let s = TestStruct { val: 10 };

assert!(s.to_json_string().is_ok());

Convert to json pretty string.

use serde::Serialize;
use serde_valid::json::ToJson;
use serde_valid::Validate;

#[derive(Debug, Validate, Serialize)]
struct TestStruct {
    #[validate(maximum = 100)]
    val: i32,
}
let s = TestStruct { val: 10 };

assert!(s.to_json_string_pretty().is_ok());

Convert to json string.

use serde::Serialize;
use serde_valid::json::ToJson;
use serde_valid::Validate;

#[derive(Debug, Validate, Serialize)]
struct TestStruct {
    #[validate(maximum = 100)]
    val: i32,
}
let s = TestStruct { val: 10 };

assert!(s.to_json_value().is_ok());

Convert to json writer.

use std::fs::File;
use serde::Serialize;
use serde_valid::json::ToJson;
use serde_valid::Validate;

#[derive(Debug, Validate, Serialize)]
struct TestStruct {
    #[validate(maximum = 100)]
    val: i32,
}
let s = TestStruct { val: 10 };

assert!(s.to_json_writer(File::open("foo.txt").unwrap()).is_ok());

Convert to pretty json writer.

use std::fs::File;
use serde::Serialize;
use serde_valid::json::ToJson;
use serde_valid::Validate;

#[derive(Debug, Validate, Serialize)]
struct TestStruct {
    #[validate(maximum = 100)]
    val: i32,
}
let s = TestStruct { val: 10 };

assert!(s.to_json_writer_pretty(File::open("foo.txt").unwrap()).is_ok());

Implementors