Skip to content

Commit 4ae150e

Browse files
authored
Merge pull request #119 from nathaniel-daniel/version
2 parents de45b6f + 7a15df1 commit 4ae150e

File tree

4 files changed

+34
-0
lines changed

4 files changed

+34
-0
lines changed

.github/workflows/ci.yml

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,15 @@ jobs:
5050

5151
- name: Test libmimalloc-sys crate bindings (no secure)
5252
run: cargo run -p libmimalloc-sys-test
53+
54+
- name: Build (extended)
55+
run: cargo build --features extended
56+
57+
- name: Test (extended)
58+
run: cargo test --features extended
59+
60+
- name: Test libmimalloc-sys crate bindings (extended)
61+
run: cargo run --features extended -p libmimalloc-sys-test
5362

5463
lint:
5564
name: Rustfmt / Clippy

Cargo.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,3 +31,4 @@ debug = ["libmimalloc-sys/debug"]
3131
debug_in_debug = ["libmimalloc-sys/debug_in_debug"]
3232
local_dynamic_tls = ["libmimalloc-sys/local_dynamic_tls"]
3333
no_thp = ["libmimalloc-sys/no_thp"]
34+
extended = ["libmimalloc-sys/extended"]

src/extended.rs

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
use crate::MiMalloc;
2+
3+
impl MiMalloc {
4+
/// Get the mimalloc version.
5+
///
6+
/// For mimalloc version 1.8.6, this will return 186.
7+
pub fn version(&self) -> u32 {
8+
unsafe { ffi::mi_version() as u32 }
9+
}
10+
}
11+
12+
#[cfg(test)]
13+
mod test {
14+
use super::*;
15+
16+
#[test]
17+
fn it_gets_version() {
18+
let version = MiMalloc.version();
19+
assert!(version != 0);
20+
}
21+
}

src/lib.rs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,9 @@
2525
2626
extern crate libmimalloc_sys as ffi;
2727

28+
#[cfg(feature = "extended")]
29+
mod extended;
30+
2831
use core::alloc::{GlobalAlloc, Layout};
2932
use core::ffi::c_void;
3033
use ffi::*;

0 commit comments

Comments
 (0)