An open API service indexing awesome lists of open source software.

https://github.com/calebwin/derive_lit

a tool to auto-generate literal macros for your data structure
https://github.com/calebwin/derive_lit

data-structures macro rust

Last synced: about 1 year ago
JSON representation

a tool to auto-generate literal macros for your data structure

Awesome Lists containing this project

README

          

# `derive_lit`

[![](http://meritbadge.herokuapp.com/derive_lit)](https://crates.io/crates/derive_lit)
[![](https://docs.rs/derive_lit/badge.svg)](https://docs.rs/derive_lit)

Are you developing a data structure?

```rust
struct GroceryList {
num_items: usize,
item_ids: Vec
}
```

And your data structure lets you add data to it?

```rust
impl GroceryList {
fn new() -> Self {
Self {
num_items: 0,
item_ids: vec![]
}
}

fn push(&mut self, item_id: usize) {
self.item_ids.push(item_id);
}
}
```

Wouldn't it be cool if you could do this?

```rust
fn main() {
let groceries = grocery_list![
0,
9,
8,
4
];

// do something intersting with your GroceryList...
}
```

What if you could just...

```rust
use derive_lit::VecLit;

#[derive(VecLit)]
struct GroceryList {
num_items: usize,
item_ids: Vec
}
```

You can! Use `derive_lit::*`.
Just a `derive_lit = "0.1.0"` away!