WIP: Add TOML files, converted from parameter txt files #16
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
TOML's concept of a table of key-value pairs appears to match the elastix concept of a map of parameters. Just like elastix, TOML requires each key (parameter name) to be unique: https://github.com/toml-lang/toml/blob/1.0.0/toml.md#keys TOML also supports arrays of mixed types.
Like YAML, TOML supports comments, starting with
#
: https://github.com/toml-lang/toml/blob/1.0.0/toml.md#user-content-commentTOML has built-in Python support, from Python 3.11: https://docs.python.org/3/library/tomllib.html For example:
The Python
dict
returned bytomllib.load
is quite similar to an elastixParameterMap
, although we might need to write some extra code to ease conversions between such adict
and aParameterMap
.There are various open source TOML parsers available in C++.
TOML was suggested by both Matt McCormick (@thewtex) and Denis (@dpshamonin)
@mstaring @stefanklein Please have a look! Specifically look at the second commit, "WIP: Convert all *.toml files to the TOML file format
@lassoan Andras, would TOML file support also be useful to you?