Commit Graph

92 Commits

Author SHA1 Message Date
ToruNiina
17f3d96766 add lexers 2018-12-04 20:29:59 +09:00
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