acme
Foundational cross-platform layer of the ca2 framework
Loading...
Searching...
No Matches
string_map.h
1#pragma once
2
3
4#include "acme/prototype/collection/map.h"
5
6
7template < class PAYLOAD, typename PAIR = pair < string, PAYLOAD >, enum_allocate t_eallocate = e_allocate_normal >
9 public map_base < string, PAYLOAD, PAIR, t_eallocate >
10{
11public:
12
13 using BASE_PAIR_MAP = map_base < string, PAYLOAD, PAIR, t_eallocate >;
14
15 using BASE_PAIR_MAP::BASE_PAIR_MAP;
16 using BASE_PAIR_MAP::operator = ;
17
18 using iterator = typename BASE_PAIR_MAP::iterator;
19
20
21
22};
23
24
25template < class PAYLOAD, typename PAIR = pair < string, PAYLOAD > >
26using string_map = map_particle < string_map_base < PAYLOAD, PAIR > >;
27
28using string_to_iptr_base = string_map_base < iptr > ;
29
30using string_to_int_base = string_map_base < ::i32 > ;
31
32using string_to_ptr_base = string_map_base < void * > ;
33
34using iptr_to_string_base = map_base < iptr, string >;
35
36using iptr_to_iptr_to_string_base = map_base < iptr, iptr_to_string_base >;
37
38using index_to_string_base = map_base < ::collection::index, string >;
39
40using index_to_index_to_string_base = map_base < ::collection::index, index_to_string_base >;
41
42using string_to_string_base = string_map_base < string > ;
43
44using string_to_string = map_particle < string_to_string_base > ;
45
46using string_table_base = string_map_base < string_to_string_base >;
47
48using string_table = string_map < ::pointer < string_to_string > >;
49
50
51//#define strmap(T) string_map_base < T >
52
53
54
Definition string_map.h:10