Collection Literals

Simple library for convenient collection initialization.

Using collection! macro:

```rust use collection_literals::collection;

fn main() { let emptycollection: HashMap = collection! {}; let emptycollection = collection! { HashMap:: };

let hash_set: HashSet<u8> = collection! { 1, 5, 9, 12 };
let hash_set = collection! { HashSet::<u8>; 1, 5, 9, 12 };

let hash_map: HashMap<u64, char> = collection! {
    0 => '0',
    1 => '1',
    2 => '2',
    3 => '3',
};
let hash_map = collection! { HashMap::<u64, char>;
    0 => '0',
    1 => '1',
    2 => '2',
    3 => '3',
};

let btree_set: BTreeSet<u8> = collection! { 1, 5, 9, 12 };
let btree_set = collection! { BTreeSet::<u8>; 1, 5, 9, 12 };

let btree_map: BTreeMap<u64, char> = collection! {
    0 => '0',
    1 => '1',
    2 => '2',
    3 => '3',
};
let btree_map = collection! { BTreeMap::<u64, char>;
    0 => '0',
    1 => '1',
    2 => '2',
    3 => '3',
};

} ```

Using hash! macro:

```rust use collection_literals::hash;

fn main() { let emptyhashmap: HashMap = hash! {}; let emptyhashmap = hash! { map of String => bool }; let emptyhashmap = hash! { map of String => bool {} }; let emptyhashmap = hash! { of String => bool }; let emptyhashmap = hash! { of String => bool {} };

let empty_hash_set: HashSet<u8> = hash! {};
let empty_hash_set = hash! { set of u8 };
let empty_hash_set = hash! { set of u8 {} };
let empty_hash_set = hash! { of u8 };
let empty_hash_set = hash! { of u8 {} };

let hash_map: HashMap<u64, char> = hash! {
    0 => '0',
    1 => '1',
    2 => '2',
    3 => '3',
};
let hash_map = hash! { map of u64 => char {
    0 => '0',
    1 => '1',
    2 => '2',
    3 => '3',
}};
let hash_map = hash! { of u64 => char {
    0 => '0',
    1 => '1',
    2 => '2',
    3 => '3',
}};
let hash_map = hash! { 
    0_u64 => '0',
    1_u64 => '1',
    2_u64 => '2',
    3_u64 => '3',
};

let hash_set: HashSet<u8> = hash! { 1, 2, 3 };
let hash_set = hash! { set of u8 { 1, 2, 3 } };
let hash_set = hash! { of u8 { 1, 2, 3 } };
let hash_set = hash! { 1_u8, 2_u8, 3_u8 };

} ```

Using btree! macro:

```rust use collection_literals::btree;

fn main() { let emptybtreemap: BTreeMap = btree! {}; let emptybtreemap = btree! { map of String => bool }; let emptybtreemap = btree! { map of String => bool {} }; let emptybtreemap = btree! { of String => bool }; let emptybtreemap = btree! { of String => bool {} };

let empty_btree_set: BTreeSet<u8> = hash! {};
let empty_btree_set = btree! { set of u8 };
let empty_btree_set = btree! { set of u8 {} };
let empty_btree_set = btree! { of u8 };
let empty_btree_set = btree! { of u8 {} };

let btree_map: BTreeMap<u64, char> = btree! {
    0 => '0',
    1 => '1',
    2 => '2',
    3 => '3',
};
let btree_map = btree! { map of u64 => char {
    0 => '0',
    1 => '1',
    2 => '2',
    3 => '3',
}};
let btree_map = btree! { of u64 => char {
    0 => '0',
    1 => '1',
    2 => '2',
    3 => '3',
}};
let btree_map = btree! { 
    0_u64 => '0',
    1_u64 => '1',
    2_u64 => '2',
    3_u64 => '3',
};

let btree_set: BTreeSet<u8> = btree! { 1, 2, 3 };
let btree_set = btree! { set of u8 { 1, 2, 3 } };
let btree_set = btree! { of u8 { 1, 2, 3 } };
let btree_set = btree! { 1_u8, 2_u8, 3_u8 };

} ```