Evo C++ Library v0.5.1
evo_config.h
Go to the documentation of this file.
1 // Evo C++ Library
2 /* Copyright 2019 Justin Crowell
3 Distributed under the BSD 2-Clause License -- see included file LICENSE.txt for details.
4 */
6 
7 #pragma once
8 #ifndef INCL_evo_evo_config_h
9 #define INCL_evo_evo_config_h
10 
13 
15 // Version
16 
18 #define EVO_VERSION 0.5
19 
21 #define EVO_VERSION_PATCH 1
22 
24 #define EVO_VERSION_STRING "0.5.1"
25 
27 // Global
28 
29 // Exceptions
30 #if !defined(EVO_EXCEPTIONS)
31 
35  #define EVO_EXCEPTIONS 1
36 #endif
37 
38 #if !defined(EVO_CATCH_DEBUG)
39 
43  #define EVO_CATCH_DEBUG 0
44 #endif
45 
47 // Containers
48 
49 #if !defined(EVO_STD_STRING)
50 
58  #define EVO_STD_STRING 0
59 #endif
60 
61 #if !defined(EVO_STD_STRING_VIEW)
62 
71  #define EVO_STD_STRING_VIEW 0
72 #endif
73 
74 // TODO -- Work-In-Progress: Do not change from defaults at this time
75 
76 // Size Type
77 #if !defined(EVO_SIZE_TYPE)
78 
83  #define EVO_SIZE_TYPE uint32
84 #endif
85 
86 // String Size Type
87 #if !defined(EVO_STR_SIZE_TYPE)
88 
93  #define EVO_STR_SIZE_TYPE uint32
94 #endif
95 
96 // Allocators
97 #if !defined(EVO_ALLOCATORS)
98 
101  #define EVO_ALLOCATORS 0
102 #endif
103 
104 // List
105 #if !defined(EVO_LIST_REALLOC)
106 
110  #define EVO_LIST_REALLOC 1
111 #endif
112 #if !defined(EVO_LIST_OPT_EXTREF)
113 
118  #define EVO_LIST_OPT_EXTREF 1
119 #endif
120 #if !defined(EVO_LIST_OPT_LAZYREM)
121 
126  #define EVO_LIST_OPT_LAZYREM 0
127 #endif
128 #if !defined(EVO_LIST_OPT_LAZYBUF)
129 
133  #define EVO_LIST_OPT_LAZYBUF 1
134 #endif
135 #if !defined(EVO_LIST_OPT_REFTERM)
136 
141  #define EVO_LIST_OPT_REFTERM 0
142 #endif
143 
144 // List Option Dependencies
145 #if !EVO_LIST_OPT_EXTREF
146  #define EVO_LIST_OPT_LAZYBUF 0
147  #define EVO_LIST_OPT_REFTERM 0
148 #endif
149 
151 
152 #endif