ToruNiina
125f608fa5
feat: remove TOML11_UNRELEASED_FEATURES.
...
v1.0.0-rc.1 has been released
2020-04-03 23:42:58 +09:00
ToruNiina
79594709fe
fix: don't use default ctor when converting to map
2020-03-30 15:02:26 +09:00
ToruNiina
95c3b5f538
feat: use push_back instead of resize
2020-03-27 18:06:26 +09:00
ToruNiina
9b52dc0131
feat: remove resize and add try_reserve
2020-03-27 18:05:31 +09:00
ToruNiina
5212992f05
feat: add is_std_forward_list
...
std::forward_list does not have push_back, insert, or emplace but
push_front, insert_after, and emplace_after. We need to distinguish it
from other continers.
2020-03-27 18:02:37 +09:00
ToruNiina
fcd6e47500
feat: add meta funcs, has_reserve/push_back_method
2020-03-27 18:01:47 +09:00
ToruNiina
31826b55ce
feat: avoid double checking in helper methods
2020-03-25 22:49:19 +09:00
ToruNiina
d7662347f2
refactor: shorten switch_cast definition by macro
2020-03-21 17:44:23 +09:00
ToruNiina
5f5539d402
feat: throw informative error from value.at(...)
2020-03-21 17:09:04 +09:00
ToruNiina
c2151cab0b
refactor: show func name in bad_cast from helpers
2020-03-21 17:06:34 +09:00
ToruNiina
653c87592c
feat: enable to show function name in bad_cast
2020-03-21 17:04:05 +09:00
ToruNiina
bdf4e75122
refactor: move helper function from get to value
2020-03-21 16:57:12 +09:00
ToruNiina
af8cf9ddc5
refactor: remove redundant functions in serializer
2020-03-13 13:55:14 +09:00
ToruNiina
f125cca010
refactor: simplify serializer's template argument
2020-03-12 13:46:17 +09:00
ToruNiina
d11e42ca7e
fix: explicitly say the table is top-level
...
The top-level table has its region at the first character of the file.
That means that, in the case when a key is not found in the top-level
table, the error message points to the first character. If the file has
its first table at the first line, the error message would be like this.
```console
[error] key "a" not found
--> example.toml
|
1 | [table]
| ^------ in this table
```
It actually points to the top-level table at the first character,
not `[table]`. But it is too confusing. To avoid the confusion, the
error message should explicitly say "key not found in the top-level
table".
2020-02-29 22:56:29 +09:00
ToruNiina
128b66bda9
refactor: add missing whitespace
2020-02-29 22:54:50 +09:00
ToruNiina
d1af42f151
refactor: add throw_key_not_found_error
...
and replace related throw statements with it
2020-02-29 22:23:15 +09:00
ToruNiina
5e3ffb70dd
fix: check clang macro when checking gcc is used
2020-02-19 17:00:22 +09:00
ToruNiina
82fec38e37
refactor: simplify internally-used function
2020-02-19 15:46:25 +09:00
ToruNiina
189b910384
fix: solve #97 in the naivest way, macros
2020-02-19 15:44:38 +09:00
Jordan Williams
6b5944e839
fix -Wundef warnings
2020-02-11 06:30:18 -06:00
Jordan Williams
3b6417de00
fix clang range-loop-analysis warnings
2020-02-11 06:13:55 -06:00
ToruNiina
f6a41d986c
feat: handle quotes in strings in the better way
...
- if a basic string contains any double quote, make it multiline.
- because 1 or 2 consecutive "s do not require escape sequence in it.
- if a basic string will be sufficiently long, make it multiline.
- if 3 consecutive "s appeared, insert backslash to break it down.
2020-02-05 22:42:10 +09:00
ToruNiina
16fc172b21
feat: check string length before adding newline
...
In literal strings, only the first newline will be trimmed.
```toml
str = '''
The first newline will be trimmed.'''
```
The previous code always adds this first-newline, but after this commit
it checks the length of the string and adds newline if the string is
sufficiently long.
2020-02-05 22:39:08 +09:00
ToruNiina
0582e1535b
fix: handle edge-cases with quotes in ml-string
...
See comments in the code for detail.
2020-02-04 22:36:39 +09:00
ToruNiina
5ca3a3c262
refactor: change ifdef UNRELEASED_FEATURE region
...
to eliminate dead code after returning from a function
2020-02-04 21:05:03 +09:00
ToruNiina
49fdb61731
refactor: add explicit to ctors of internal types
2020-01-24 15:58:24 +09:00
ToruNiina
0c58549fc6
Merge branch 'master' of github.com:ToruNiina/toml11
2020-01-22 12:20:34 +09:00
ToruNiina
22d630fec1
feat: replace detail::stuff by std if possible
2020-01-20 12:18:05 +09:00
ToruNiina
f7bf341452
fix: add missing noexcept specifier
2020-01-19 21:06:10 +09:00
ToruNiina
0934d90f90
refactor: move ctors that are only used internally
2020-01-19 18:30:27 +09:00
ToruNiina
f2c8d0e279
refactor: add missing explicit to toml::exception
2020-01-19 17:51:24 +09:00
ToruNiina
8b737dc21f
feat: add member methods to toml::value
2020-01-16 20:58:10 +09:00
ToruNiina
9bef715ccd
fix: use u32 as a result of binary operation
2020-01-13 11:26:53 +09:00
ToruNiina
d2b1cf5123
refactor: just use a constructor
...
to remove conversions
2020-01-13 11:26:29 +09:00
ToruNiina
9f92916d1d
fix: suppress -Wuseless-conversion
...
`{integer} + 1` will automatically be an int, so static_cast<int>(a+1)
will be useless conversion.
2020-01-13 11:24:48 +09:00
ToruNiina
666e4cf9dc
fix: suppress sign-conversion warnings
2020-01-13 00:46:21 +09:00
ToruNiina
490abe04fd
refactor: remove redundant template argument
2020-01-12 23:07:17 +09:00
ToruNiina
81ed4c0e9d
Merge branch 'master' of github.com:ToruNiina/toml11
2020-01-10 21:17:17 +09:00
ToruNiina
55260654bf
feat: get user-defined value by constructor
...
If a user-defined constructor has constructor(const toml::value&),
then it should be convertible in `toml::get` and `toml::find`.
2020-01-10 20:38:52 +09:00
ToruNiina
c54a03f189
Merge branch 'master' into find-idx
2020-01-09 00:27:51 +09:00
ToruNiina
7f020f3f44
refactor: remove error prefix
...
that will automatically be added in format_underline
2020-01-07 22:27:13 +09:00
ToruNiina
827b433389
Merge branch 'master' into find-idx
2020-01-07 22:13:15 +09:00
ToruNiina
18f84088b4
perf: avoid tmp str construction while checking
2019-12-19 22:13:47 +09:00
ToruNiina
c199bd8b49
feat: enable to access the 1st char of region
2019-12-19 22:13:33 +09:00
ToruNiina
5b35c1a74e
fix: prohibit modification on inline table
...
According to toml-lang/toml:36d3091b3 "Clarify that inline tables are
immutable", check if it adds key-value pair to an inline table.
This is one of the unreleased (after-0.5.0) toml feature. But this is
marked as "Clarify", so TOML-lang intended that inline tables are
immutable in all version.
2019-12-19 22:02:17 +09:00
ToruNiina
d3513c0f84
fix: fmt line num in err msg correctly
2019-12-17 19:35:26 +09:00
ToruNiina
4688c235f5
refactor: rename internal macro value
2019-12-12 17:38:29 +09:00
ToruNiina
5c146857a3
Merge branch 'master' into colorize-err-msg
2019-12-11 22:49:38 +09:00
ToruNiina
bc51699415
Merge branch 'bracket-operator'
2019-12-11 19:36:21 +09:00