annotate src/core/json.cc @ 375:abd956418fe9

gui/pages/now_playing: automatically update progress when the episode is "finished"
author Paper <paper@tflc.us>
date Fri, 25 Jul 2025 11:22:55 -0400
parents 47c9f8502269
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
9
5c0397762b53 INCOMPLETE: megacommit :)
Paper <mrpapersonic@gmail.com>
parents: 7
diff changeset
1 #include "core/json.h"
175
9b10175be389 dep/json: update to v3.11.3
Paper <mrpapersonic@gmail.com>
parents: 174
diff changeset
2 #include "json/json.hpp"
2
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
3
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
4 namespace JSON {
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
5
369
47c9f8502269 *: clang-format all the things
Paper <paper@tflc.us>
parents: 175
diff changeset
6 nlohmann::json GetValue(const nlohmann::json &json, const nlohmann::json::json_pointer &ptr)
47c9f8502269 *: clang-format all the things
Paper <paper@tflc.us>
parents: 175
diff changeset
7 {
174
f88eda79c60a anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents: 83
diff changeset
8 if (json.contains(ptr))
f88eda79c60a anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents: 83
diff changeset
9 return json.at(ptr);
9
5c0397762b53 INCOMPLETE: megacommit :)
Paper <mrpapersonic@gmail.com>
parents: 7
diff changeset
10 else
174
f88eda79c60a anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents: 83
diff changeset
11 return nlohmann::json();
2
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
12 }
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
13
369
47c9f8502269 *: clang-format all the things
Paper <paper@tflc.us>
parents: 175
diff changeset
14 bool GetBoolean(const nlohmann::json &json, const nlohmann::json::json_pointer &ptr, bool def)
47c9f8502269 *: clang-format all the things
Paper <paper@tflc.us>
parents: 175
diff changeset
15 {
6
1d82f6e04d7d Update: add first parts to the settings dialog
Paper <mrpapersonic@gmail.com>
parents: 2
diff changeset
16 if (json.contains(ptr) && json[ptr].is_boolean())
1d82f6e04d7d Update: add first parts to the settings dialog
Paper <mrpapersonic@gmail.com>
parents: 2
diff changeset
17 return json[ptr].get<bool>();
9
5c0397762b53 INCOMPLETE: megacommit :)
Paper <mrpapersonic@gmail.com>
parents: 7
diff changeset
18 else
5c0397762b53 INCOMPLETE: megacommit :)
Paper <mrpapersonic@gmail.com>
parents: 7
diff changeset
19 return def;
2
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
20 }
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
21
9
5c0397762b53 INCOMPLETE: megacommit :)
Paper <mrpapersonic@gmail.com>
parents: 7
diff changeset
22 } // namespace JSON