rustic_hal 0.1.0

A rust library for creating Hal representations of resources, based on serde
Documentation

Rustic Hal

A simple library for serializing (and deserializing coming soon) resources following the HAL Spec

Clippy Linting Result Build Status

Usage

On nightly rust

Add the dependency to your Cargo.toml:


[dependencies]
rustic_hal="0.1.0"
serde="0.8"
serde_json="0.8"
serde_derive="0.8"

and to use:


extern crate rustic_hal;
extern crate serde;
extern crate serde_json;

use rustic_hal::*;
use serde::Serialize;
use serde_json::to_json;

#[derive(Serialize)]
pub struct MyResource {
    pub test: String;
}

let mr = MyResource { test: "Hello, World!".to_string() };
let mut hal_res = HalResource::new(mr);
hal_res.add_link("self", "/api/myresource/0");

println!("json representation: {}", to_json(hal_res));

Documentation

see https://pduval.github.io/rustic_hal/rustic_hal/ for the cargo-doc pages.

Credits

This library is heavily inspired by (read copied from) the hal-rs library by Herman J. Radtke III.

Warnings

I have only very recently started learning Rust, so the idiomatic quality of this code is probably very low.