Skip to content

Latest commit

 

History

History
40 lines (30 loc) · 1.04 KB

README.md

File metadata and controls

40 lines (30 loc) · 1.04 KB

hifumi

Crates.io License Crates.io Version GitHub Actions Workflow Status

Introduction

A serialization library for migrating data between different versions.

The name hifumi comes from the character Hifumi in the game Blue Archive.

Still in development, the API may change in the future.

Quick Start

use hifumi::version;

#[version("0.2")]
#[derive(Debug, Clone, PartialEq)]
#[migration("0.1" => "0.2" {
    + (c: i32, d: i32) => e: String { (c + d).to_string() },
    - f: f32,
})]
struct Test {
    a: i32,
    b: i32,
    c: i32,
    d: i32,
    e: String,
}

TODO

  • Support rs_ts.
  • Support yuuka.
  • Version field can use crate version automatically.
  • Generate migration code automatically from the git history.