ligen-macro

Crates.ioligen-macro
lib.rsligen-macro
version0.1.16
sourcesrc
created_at2021-07-01 18:27:12.061614
updated_at2021-07-05 22:20:20.902363
descriptionLanguage Interface Generator Core
homepage
repository
max_upload_size
id417536
size2,165
Danilo Guanabara (notdanilo)

documentation

https://docs.rs/ligen

README

Ligen

Ligen (Language Interface Generator) is an extensible macro-based multi-language binding generator.

We officially support ligen-c, a binding generator for the Programming Language C.

You can add ligen to your codebase by adding #[ligen] attributes to the items you want to export. It is as simple as this:

use ligen::ligen;
use ligen_c::ligen_c;
use ligen_cpp::ligen_cpp;

pub struct Counter {
  count: u32
}

#[ligen(c, cpp)]
impl Counter {
  pub fn new() -> Self { Self { count: 0 } }

  pub fn count(&mut self) { self.count += 1; }

  pub fn get_count(&self) -> u32 { self.count }
}

Getting started

Here are a few links to get started:

Commit count: 0

cargo fmt