1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
// #![cfg_attr(not(any(feature = "nightly")), forbid(unstable_features))]

#![cfg_attr(feature = "nightly", feature(duration_float))]

//! This crate provides a collection of macros to make some tasks easier to use
//! on Rust ecosystem.
//!
//! ## What it has to offer?
//!  * **boxed**: A simple macro to make a new Box value.
//!  * **btmap**: Create a `BTreeMap` from a list of key-value pairs
//!  * **btset**: Create a `BTreeSet` from a list of elements
//!  * **cmap**: Macro to `HashMap` collection comprehensions¹
//!  * **cset**: Macro to `HashSet` collection comprehensions¹
//!  * **cvec**: Macro to `Vec` collection comprehensions¹
//!  * **dur**: Creates a `Duration` object following a time pattern²
//!  * **hmap**: Create a `HashMap` from a list of key-value pairs
//!  * **hset**: Create a `HashSet` from a list of elements
//!  * **sleep**: Makes a thread sleep a amount following a time pattern²
//!  * **time**: Print out the time it took to execute a given expression in seconds
//!
//!  1. The comprehension macros supports a haskell-like as well as python-like writing syntax and
//!  have the limitation of not supporting nesting
//!  2. A time pattern can be: mim, sec, nano, micro, milli

mod collections;
mod comprehension;
mod hash;
mod pointer;
mod times;