This library provides traits for borrow
and borrow_mut
functions, most commonly found in RefCell
s. Therefore it is possible to accept other kinds of RefCell
s like an AtomicRefCell
or smart pointers around RefCell
s like Arc
, Rc
or Box
.
Example
use ;
use RefCell;
use ;
let value = new;
assert_eq!;
For more details please refer to the documentation, that you can find here: https://docs.rs/borrow_trait
Usage
Simply add the following line to your Cargo.toml
under [dependencies]
:
= { = "0.1" }
Notes
- This crate does conform to semantic versioning.
- It contains not a single line of unsafe code.
- This crate re-exports it's dependencies for ease of use.
Planned
- Remove the lifetime requirement of
BorrowRef<'a, C, T>
andBorrowRefMut<'a, C, T>
. This feature requires Generic Associated Lifetimes rust-lang/rust#44265
Credits
- Parts of the documentation were copied from the std library
- The feature flags were inspired by the serde and rand crate.
- The name for the traits were inspired by borrow_with_ref_obj crate.
License
This project is licensed under either of
at your option.
Contribution
If you have any issue please don't hesitate to create one :)
Before you make a PR please ensure, that your code has been formatted with rustfmt
:
cargo fmt