disk

Macro ron

Source
macro_rules! ron {
    ($data:ty, $dir:expr, $project_directory:expr, $sub_directories:expr, $file_name:expr) => { ... };
}
Available on crate feature ron only.
Expand description

Implement the Ron trait

File extension is ron and is automatically appended.

§Input

These are the inputs you need to provide to implement Ron.

VariableDescriptionRelated Trait ConstantTypeExample
$dataIdentifier of the data to implement forstruct or enumMyState
$dirWhich OS directory to useRon::OS_DIRECTORYDirDir::Data
$project_directoryThe name of the top project folderRon::PROJECT_DIRECTORY&str"MyProject"
$sub_directories(Optional) sub-directories before fileRon::SUB_DIRECTORIES&str"some/dirs"
$file_nameThe file name to useRon::FILE_NAME&str"state"

§Example

use serde::{Serialize,Deserialize};
use disk::*;

ron!(State, Dir::Data, "MyProject", "some/dirs", "state");
#[derive(Serialize,Deserialize)]
struct State {
    string: String,
    number: u32,
}

This example would be located at ~/.local/share/myproject/some/dirs/state.ron.