Commit Graph

241 Commits

Author SHA1 Message Date
ToruNiina
1f564ec047 add combinators to scan content 2018-12-04 20:29:39 +09:00
ToruNiina
679e282e23 make variables in region/location read-only
to avoid modifying mistakenly
2018-12-03 00:10:26 +09:00
ToruNiina
59588e3a10 add static_assert and useful member funcs 2018-12-02 23:22:27 +09:00
ToruNiina
f83a8b450e add concat_to_string to utility for error messges 2018-12-02 23:05:15 +09:00
ToruNiina
8bf97d8a00 add constructors that receive range to region 2018-12-02 23:04:49 +09:00
ToruNiina
2ee8ffab21 add begin/end to region 2018-12-02 21:54:39 +09:00
ToruNiina
9c1bfbd5eb make region::source immutable 2018-12-02 21:03:08 +09:00
ToruNiina
c38b9b7dc7 add region and location to represent tokens
location is almost same as an Iterator, but having shared_ptr that points
the content. region is almost same as a range. by adding pointer to the
content source, utility function to show the error message can be
implemented easier. it is expected that this also makes easy to show
error messages after parse (e.g., in the case of bad_get)
2018-12-02 20:52:04 +09:00
ToruNiina
6c0a12148b add result<T, E> struct to handle errors
aiming later updates and refactoring of parsers
2018-12-02 18:01:37 +09:00
ToruNiina
f326334147 add definition of constexpr static value to avoid linker error 2018-07-08 18:58:38 +09:00
ToruNiina
b1a55b1331 simplify SFINAE in to_toml 2018-05-05 13:09:40 +09:00
ToruNiina
170b0d6b3f use constexpr value instead of call constexpr func directory 2018-05-05 12:06:06 +09:00
ToruNiina
433636a06f simplify the implementation of from_toml 2018-05-05 11:59:34 +09:00
ToruNiina
9555817901 add get<pair>, get<tuple> 2018-05-05 11:46:09 +09:00
ToruNiina
e54deacf1a simplify SFINAE expressions in toml::get 2018-05-05 11:42:11 +09:00
ToruNiina
f953a9cf23 add conjunction, disjunction, negation, index_seq 2018-05-05 11:37:18 +09:00
ToruNiina
117549bf70 change is_(map|container) and remove needless trait 2018-05-05 11:36:47 +09:00
ToruNiina
5aeb6f24df change exception type #8; iterator may be invalid 2017-12-24 11:02:32 +09:00
ToruNiina
3f1b431ee2 add missing inline specifier #7 2017-12-15 21:39:38 +09:00
ToruNiina
3083f65493 add get_or 2017-12-11 12:04:57 +09:00
ToruNiina
d1fd42ff7e output line number if error occured 2017-06-17 19:05:24 +09:00
Guillaume Fraux
57cc7f77c1 Allow to build with intel c++ compiler 2017-06-13 16:05:55 +02:00
ToruNiina
8a98ce8e35 permit tie with non-match types in from_toml 2017-05-19 14:44:05 +09:00
ToruNiina
80adda8184 open file with binary mode 2017-05-17 14:12:19 +09:00
ToruNiina
2c92142d5c restore parser and test 2017-05-17 14:07:34 +09:00
ToruNiina
d77ec7dc88 restore old parse function 2017-05-17 13:21:32 +09:00
ToruNiina
430940f766 fix typos 2017-05-17 13:12:21 +09:00
ToruNiina
1fc58095fa use wstring_convert (but is deprecated in c++17) 2017-05-17 13:08:24 +09:00
ToruNiina
5ffc51a99d experimentally use wchar and wstring in parser.hpp 2017-05-17 13:04:36 +09:00
ToruNiina
1265952b97 split parsing unicode file 2017-05-17 12:54:13 +09:00
ToruNiina
89c1094a69 set binary flag.. 2017-05-17 12:15:39 +09:00
ToruNiina
d65642ddf6 add locale settings 2017-05-17 11:45:27 +09:00
ToruNiina
9e9a5a7253 fix typo 2017-05-17 10:55:22 +09:00
ToruNiina
81b08c924b remove check from function not dereferencing iter 2017-05-17 08:06:17 +09:00
ToruNiina
74b618c412 fix is_chain_of_impl 2017-05-16 22:29:31 +09:00
ToruNiina
fe6a38737d add Iterator pointing to the end of a range 2017-05-16 22:12:32 +09:00
Luthaf
40da3f54d5 Fix missing include 2017-05-16 14:09:46 +02:00
Guillaume Fraux
612119fa1e Do not use the macro shortcut for not
It is not required by the standard
2017-05-15 14:05:54 +02:00
ToruNiina
eb9f4dce1e remove static and indent 2017-05-13 15:00:02 +09:00
ToruNiina
95e48744d1 impl format<string> 2017-05-13 11:28:11 +09:00
ToruNiina
f52b78010c fix array_of_table assignments 2017-05-12 22:28:49 +09:00
ToruNiina
1c26ffe3ae add parse() function 2017-05-12 20:49:47 +09:00
ToruNiina
fd58cc507f add parse_data 2017-05-11 19:36:12 +09:00
ToruNiina
6ab05a8594 change impl of parser of values 2017-05-11 15:09:11 +09:00
ToruNiina
855cbe5aff add operator= and ctor for result 2017-05-11 15:08:38 +09:00
ToruNiina
f5d301016f add parser impl for integer, float, boolean 2017-05-11 00:14:22 +09:00
ToruNiina
88e2c3fe48 change impl of parser: optional based 2017-05-10 23:56:09 +09:00
ToruNiina
acfc706e0c fix some small mistakes 2017-05-10 11:16:22 +09:00
ToruNiina
1392c2f3b9 add stream manipulators 2017-05-10 00:43:13 +09:00
ToruNiina
70f85ec818 add format 2017-05-09 22:09:03 +09:00
ToruNiina
c706a54121 add namespace specifier 2017-05-09 22:07:28 +09:00
ToruNiina
6878abdca1 define charactor type 2017-05-08 19:17:14 +09:00
ToruNiina
bf7461f7b4 fix parsing order of toml::value 2017-05-08 19:16:54 +09:00
ToruNiina
bdc7fbdf08 fix fundamental_type checking order 2017-05-08 19:16:26 +09:00
ToruNiina
29fe377438 add parser for tables 2017-05-08 19:08:49 +09:00
ToruNiina
d1814d3922 fix arguments 2017-05-08 19:08:30 +09:00
ToruNiina
bae25322f8 add acceptor for overall data 2017-05-08 19:07:50 +09:00
ToruNiina
567b69d050 fix orders of call 2017-05-08 19:07:29 +09:00
ToruNiina
98d1d88f60 add parse_array/inline table 2017-05-07 15:04:40 +09:00
ToruNiina
414fc4d0fa change key acceptor 2017-05-07 15:04:18 +09:00
ToruNiina
2d27c94506 fix missing semicolon 2017-05-07 14:09:13 +09:00
ToruNiina
77f59a2e94 split is_array to fixed_type_array and array_of_some_type 2017-05-07 14:08:42 +09:00
ToruNiina
7355c76ed0 add parse_string and parse_datetime 2017-05-07 13:51:25 +09:00
ToruNiina
a1218b266a add restriction to datetime offset size 2017-05-07 13:50:53 +09:00
ToruNiina
00e4c94766 add is_string and is_datetime 2017-05-07 12:29:54 +09:00
ToruNiina
726a70cd8f enable toml::from_toml to get static array (like std::array) 2017-05-07 10:40:47 +09:00
ToruNiina
3203d39dad enable toml::get to make static array (like std::array) 2017-05-07 10:40:17 +09:00
ToruNiina
58c12a69be add toml::resize func that resize only resizable container 2017-05-06 23:40:57 +09:00
ToruNiina
a506dfd3c1 add has_resize_method 2017-05-06 23:40:28 +09:00
ToruNiina
7c63bc438c remove needless typedef 2017-05-06 18:46:07 +09:00
ToruNiina
7dde4f3039 add parser of fundamental types 2017-05-06 18:44:19 +09:00
ToruNiina
bbb9388d3a add typedefs to basic_datetiem 2017-05-06 18:43:55 +09:00
ToruNiina
864840d11c add table definition acceptor 2017-05-05 19:33:45 +09:00
ToruNiina
e35e620812 add acceptor for array and inline table 2017-05-05 18:54:09 +09:00
ToruNiina
9a627b44fb add some test 2017-05-05 17:17:03 +09:00
ToruNiina
50d00a840f add acceptors for toml values 2017-05-05 16:48:54 +09:00
ToruNiina
3e016be668 add simple acceptors 2017-05-05 10:54:47 +09:00
ToruNiina
833c69628a fix datetime::ctor and stream operator for datetime 2017-04-21 15:54:48 +09:00
ToruNiina
78f25dd66d split files 2017-04-21 13:14:53 +09:00
ToruNiina
337a671f0c split datetime definition from toml.hpp 2017-04-21 12:56:39 +09:00
ToruNiina
7918894e6b add decl of basic_datetime 2017-04-20 22:07:43 +09:00
ToruNiina
f4afaa7509 add from_toml(std::tie, value) and test for it 2017-04-20 16:13:06 +09:00
ToruNiina
85ea77043a add missing default 2017-04-20 14:37:51 +09:00
ToruNiina
24b759b827 add operator for toml::value 2017-04-20 14:23:01 +09:00
ToruNiina
c6f38967df change message in exception 2017-04-20 13:30:01 +09:00
ToruNiina
1b2b422ea1 add from_toml and get function 2017-04-20 12:49:36 +09:00
ToruNiina
fd8753612a add to_toml(initializer_list) 2017-04-20 12:05:10 +09:00
ToruNiina
4a5f4a4bf5 add ctor for initializer_list 2017-04-20 10:44:11 +09:00
ToruNiina
df3602f347 add to_toml func 2017-04-20 00:13:58 +09:00
ToruNiina
34b0176083 remove is_castable 2017-04-19 23:10:29 +09:00
ToruNiina
0260a13f1c make tests/ and toml/ dir and move codes 2017-04-19 22:47:24 +09:00