5 releases
Uses old Rust 2015
0.2.3 | Nov 23, 2017 |
---|---|
0.2.2 | Oct 19, 2017 |
0.2.1 | Oct 19, 2017 |
0.2.0 | Sep 25, 2017 |
0.1.0 | May 23, 2017 |
#46 in Rendering engine
200KB
4K
SLoC
yoga-sys
Raw rust bindings for yoga.
Disclaimer: Those bindings are not provided by any of the facebook maintainers and thus may contains additional bugs.
Getting started:
Add to your Cargo.toml
:
[dependencies]
yoga-sys = "0.2.3"
In your main.rs
or lib.rs
file add:
extern crate yoga_sys;
Example
Here is the example that you can find here translated to rust using this crate:
extern crate yoga_sys;
use yoga_sys::*;
fn main() {
unsafe {
let root = YGNodeNew();
YGNodeStyleSetWidth(root, 500.);
YGNodeStyleSetHeight(root, 120.);
YGNodeStyleSetFlexDirection(root, YGFlexDirection::YGFlexDirectionRow);
YGNodeStyleSetPadding(root, YGEdge::YGEdgeAll, 20.);
let image = YGNodeNew();
YGNodeStyleSetWidth(image, 80.);
YGNodeStyleSetMargin(image, YGEdge::YGEdgeEnd, 20.);
let text = YGNodeNew();
YGNodeStyleSetHeight(text, 25.);
YGNodeStyleSetAlignSelf(text, YGAlign::YGAlignCenter);
YGNodeStyleSetFlexGrow(text, 1.);
YGNodeInsertChild(root, image, 0);
YGNodeInsertChild(root, text, 1);
YGNodeFreeRecursive(root);
}
}
Dependencies
~0–1.6MB
~25K SLoC