2018-12-02 22:42:29 -05:00
|
|
|
# qadapt
|
2018-09-23 12:41:11 -04:00
|
|
|
|
2018-11-15 20:16:49 -05:00
|
|
|
[![crates.io](https://img.shields.io/crates/v/qadapt.svg)](https://crates.io/crates/qadapt)
|
|
|
|
[![docs.rs](https://docs.rs/qadapt/badge.svg)](https://docs.rs/qadapt/)
|
2018-12-02 22:42:29 -05:00
|
|
|
[![codecov](https://codecov.io/gh/bspeice/qadapt/branch/master/graph/badge.svg)](https://codecov.io/gh/bspeice/qadapt)
|
2018-12-02 22:48:46 -05:00
|
|
|
[![travisci](https://travis-ci.org/bspeice/qadapt.svg?branch=master)](https://travis-ci.org/bspeice/qadapt)
|
|
|
|
[![appveyor](https://ci.appveyor.com/api/projects/status/km1p081tkjcptn1w/branch/master?svg=true)](https://ci.appveyor.com/project/bspeice/qadapt/branch/master)
|
|
|
|
|
2018-12-02 22:42:29 -05:00
|
|
|
|
|
|
|
---
|
|
|
|
# The Quick And Dirty Allocation Profiling Tool
|
2018-11-15 20:16:49 -05:00
|
|
|
|
2018-11-11 22:34:05 -05:00
|
|
|
This allocator is a helper for writing high-performance code that is allocation/drop free;
|
|
|
|
for functions annotated with `#[allocate_panic]`, QADAPT will detect when allocations/drops
|
|
|
|
happen during their execution (and execution of any functions they call) and throw a
|
2018-12-02 22:42:29 -05:00
|
|
|
thread panic if this occurs. QADAPT-related code is *stripped out during release builds*,
|
|
|
|
so no worries about random allocations crashing in production.
|
2018-11-11 22:34:05 -05:00
|
|
|
|
2018-12-02 22:42:29 -05:00
|
|
|
Currently this crate is Nightly-only, but will work once `const fn` is in Stable.
|
2018-11-11 22:34:05 -05:00
|
|
|
|
2018-12-02 22:42:29 -05:00
|
|
|
Please also take a look at [qadapt-macro](https://github.com/bspeice/qadapt/tree/master/qadapt-macro)
|
|
|
|
for some helper macros to make working with QADAPT a bit easier.
|