arch-into 0.0.1-alpha.5

safe type conversions between pointer-sized types (usize/isize) and types with fixed size
Documentation
# arch-into

This crate provides simplified conversions between `usize`/`isize` types, and types with constant size, depending on supported architectures.

Typically, when you want to convert `usize` to `u64` (or `u32`) you have few options:

- Use `as` keyword. This approach may lead to incorrect results
- Use `try_from` with `unwrap`/`expect`. When you target only 64-bits architectures this is fine, but it produces a lot of boilerplate
- Use `try_from` and return error. This approach hides misbehavior of your code. 

This crates provides two features: `no-arch-32` and `no-arch-64`. If you try to compile for unsupported architecture, compilation will fail with the error.

Since unsupported pointer width is defined, we can use safe conversions for types with specific size.

## Usage

```rust
use arch_into::{ArchInto, ArchFrom};

fn main() {
    let a: u64 = 23;
    let b: usize = a.arch_into();
    let _c = u64::arch_from(b);
}
```