373 Commits

Author SHA1 Message Date
John Wellbelove
ae57448c3e Made invalid id or types a compile time error. 2017-09-18 10:50:05 +01:00
John Wellbelove
807c0f93ed Updated generate script tp include type_lookup. 2017-09-17 18:28:55 +01:00
John Wellbelove
f8ff224365 Fixed formatting typo.
Added missing files to projects.
2017-09-17 18:01:37 +01:00
John Wellbelove
a9e61444a9 Changed create_from_id to return actual derived type. 2017-09-17 16:08:49 +01:00
John Wellbelove
873998518c Modified factory to accept non-contiguous type ids.
Added support for compile time type-to-id id-to-type type-to-type mapping
2017-09-17 12:43:45 +01:00
John Wellbelove
b885ad3d33 Added 'pop_into' member functions. 2017-09-14 16:27:32 +01:00
John Wellbelove
29c9b658d7 Modified factory pattern 2017-09-13 13:17:11 +01:00
John Wellbelove
dcefb938c4 Changed max_items to max_size 2017-09-13 13:16:50 +01:00
John Wellbelove
7ee5acee18 Added factory pattern 2017-09-11 21:17:33 +01:00
John Wellbelove
259dbfa741 Added type size test and error to ipool::allocate 2017-08-25 14:27:20 +01:00
John Wellbelove
267408445b Added ETL extension etl::types to allow extraction of various types from a specified type. 2017-08-25 11:10:54 +01:00
John Wellbelove
b145adb4eb Added additional generator scripts. 2017-08-25 11:09:23 +01:00
John Wellbelove
ab9f3ce538 Changed the way nullptr is defined for Arduino projects. 2017-08-22 09:36:10 +01:00
John Wellbelove
41eae71bd3 Simplified etl::parameter_type to remove unnecessary second template parameter. 2017-08-21 10:22:14 +01:00
John Wellbelove
1de9ad262a Added etl::function callback wrappers that take function pointers at compile time. 2017-08-19 11:36:56 +01:00
John Wellbelove
7f4d5c25d5 Added code to keep Code::Blocks happy 2017-08-18 16:44:19 +01:00
John Wellbelove
f4cc4c6fe3 Added integer square root template constant. 2017-08-18 12:58:51 +01:00
John Wellbelove
087c685f81 Added etl::constant helper class. 2017-08-18 12:58:25 +01:00
John Wellbelove
69704e8b6a Made it optional for messages to be virtual.
By default they are not.
Can be made virtual by defining ETL_MESSAGES_ARE_VIRTUAL in the project settings.
2017-08-17 15:33:29 +01:00
John Wellbelove
e5764c23f4 Added 'make_xxx' functions.
Similar to 'create_xxx' but returns a reference to the created object.
2017-08-17 15:31:53 +01:00
John Wellbelove
aecee1efd1 Changes to allow compilation under various compilers. 2017-08-16 13:29:12 +01:00
John Wellbelove
67b24408cb Renamed due to unresolvable clash with system header on Linux. 2017-08-16 13:12:30 +01:00
John Wellbelove
05d9f50f1d Changes to allow compilation under various compilers. 2017-08-14 14:43:33 +01:00
John Wellbelove
78c81ef929 Added allocate() and static assert test to etl::pool 2017-08-09 10:25:54 +01:00
John Wellbelove
d1df703d8c Shortened random_multiply_with_carry to random_mwc 2017-08-08 18:51:13 +01:00
John Wellbelove
302646850e Merge remote-tracking branch 'origin/development'
# Conflicts:
#	src/algorithm.h
#	test/codeblocks/ETL.depend
#	test/vs2017/etl.vcxproj.filters
2017-08-08 18:46:21 +01:00
John Wellbelove
099b3f8cfd Merge remote-tracking branch 'origin/development'
# Conflicts:
#	test/codeblocks/ETL.depend
#	test/codeblocks/ETL.layout
2017-08-07 15:54:30 +01:00
John Wellbelove
678984bf08 Merge branch 'Emplace' into development 2017-07-26 11:04:31 +01:00
John Wellbelove
044535d6d6 Merge branch 'Emplace' into development
# Conflicts:
#	src/CreateFSM.bat
#	src/CreateMessageRouter.bat
#	src/flat_map.h
#	src/fsm.h
#	src/fsm_generator.h
#	src/message_router.h
#	src/message_router_generator.h
#	src/queue.h
#	src/vector.h
#	test/codeblocks/ETL.depend
#	test/codeblocks/ETL.layout
#	test/data.h
#	test/test_fsm.cpp
#	test/test_message_router.cpp
#	test/vs2017/etl.vcxproj
#	test/vs2017/etl.vcxproj.filters
#	test/vs2017/random.csv
2017-07-26 10:06:23 +01:00
John Wellbelove
74beb3421d Fixed polynomial value for random_lsfr 2017-07-25 19:18:01 +01:00
John Wellbelove
c95c2a30df Added emplace functions supporting up to four parameters to the following containers.
forward_list
list
vector
queue
priority_queue
stack

# Conflicts:
#	src/vector.h
#	test/data.h
#	test/vs2017/random.csv
2017-07-21 12:00:15 +01:00
John Wellbelove
c981bd0c96 Added emplace functions supporting up to four parameters to the following containers.
forward_list
list
vector
queue
priority_queue
stack

# Conflicts:
#	src/vector.h
#	test/data.h
#	test/vs2017/random.csv
2017-07-21 11:59:40 +01:00
John Wellbelove
0cee4dab07 More changes to compatibility with platforms that do not support 8 bit types. 2017-07-09 10:40:44 +01:00
John Wellbelove
87b0aca32b Added lcg, clcg and lsfr random number generators 2017-07-06 18:08:50 +01:00
jwellbelove
8dfba5f648 Remove 'explicit' incompatible with C++03 2017-06-30 12:50:08 +01:00
jwellbelove
fba898ed20 Added transform_n_if algorithms 2017-06-29 12:20:40 +01:00
John Wellbelove
14074ade05 Additional algorithms. 2017-06-28 19:13:12 +01:00
jwellbelove
6e04c8b190 Added copy_n_if, for_each_n, for_each_n_if 2017-06-28 14:26:40 +01:00
John Wellbelove
b75226caf6 Moved common code to base class. 2017-06-27 18:19:28 +01:00
John Wellbelove
64f4c16480 Formating 2017-06-26 19:09:31 +01:00
John Wellbelove
d79bdc89c6 Moved common code to base class. 2017-06-26 19:09:13 +01:00
John Wellbelove
a51530a96c Completed modification of flat map/set classes to use reference flat map/set as bases. 2017-06-25 21:25:54 +01:00
John Wellbelove
58ea47ef44 Removed duplicate header include. 2017-06-25 21:24:31 +01:00
John Wellbelove
61705c8ded Merge remote-tracking branch 'origin/development' 2017-06-21 20:26:55 +01:00
John Wellbelove
4fe242baff Renamed base class MAX_SIZE to CAPACITY to avoid name clash with top level classes. 2017-06-21 19:43:09 +01:00
John Wellbelove
111a85a3e7 Removed redundant line. 2017-06-19 19:58:32 +01:00
John Wellbelove
b9865dc9f3 Merge remote-tracking branch 'origin/development' 2017-06-18 14:54:17 +01:00
John Wellbelove
62a70884bf Updated some definitions to use those from C++11 <type_traits if available. 2017-06-18 14:53:46 +01:00
John Wellbelove
3a89aaf612 Merge remote-tracking branch 'origin/development'
# Conflicts:
#	src/cstring.h
#	src/flat_map.h
#	src/set.h
#	src/u16string.h
#	src/u32string.h
#	src/wstring.h
#	test/test_string_char.cpp
#	test/test_string_u16.cpp
#	test/test_string_u32.cpp
#	test/test_string_wchar_t.cpp
#	test/vs2017/etl.vcxproj.filters
2017-06-17 17:52:17 +01:00
John Wellbelove
bc7c3e4426 Merge remote-tracking branch 'origin/memcpy_containers' into development
# Conflicts:
#	test/test_string_char.cpp
#	test/test_string_u16.cpp
#	test/test_string_u32.cpp
#	test/test_string_wchar_t.cpp
2017-06-17 16:39:45 +01:00