diff options
author | Karen Arutyunov <karen@codesynthesis.com> | 2019-04-18 20:15:46 +0300 |
---|---|---|
committer | Karen Arutyunov <karen@codesynthesis.com> | 2019-04-25 19:43:36 +0300 |
commit | 276f68ee4d55befa8922378199b4281c82d4fd93 (patch) | |
tree | af1c1b94fddec588feefe79a86e6463094ba2d8e /libbutl/manifest-parser.ixx | |
parent | 7a1c91dbdbde1c4feeaa701592365bb4b7cf2562 (diff) |
Add parse_manifest() and serialize_manifest() functions
Diffstat (limited to 'libbutl/manifest-parser.ixx')
-rw-r--r-- | libbutl/manifest-parser.ixx | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/libbutl/manifest-parser.ixx b/libbutl/manifest-parser.ixx index 4ffe3c5..1dbdcd5 100644 --- a/libbutl/manifest-parser.ixx +++ b/libbutl/manifest-parser.ixx @@ -11,4 +11,21 @@ namespace butl do { parse_next (r); } while (filter_ && !filter_ (r)); return r; } + + inline optional<std::vector<manifest_name_value>> + try_parse_manifest (manifest_parser& p) + { + std::vector<manifest_name_value> r; + return try_parse_manifest (p, r) + ? optional<std::vector<manifest_name_value>> (move (r)) + : nullopt; + } + + inline std::vector<manifest_name_value> + parse_manifest (manifest_parser& p) + { + std::vector<manifest_name_value> r; + parse_manifest (p, r); + return r; + } } |