blob: 924032a0c01e3aca8127d013b7de95586efa6c77 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
#include <mbgl/style/conversion/transition_options.hpp>
namespace mbgl {
namespace style {
namespace conversion {
optional<TransitionOptions> Converter<TransitionOptions>::operator()(const Convertible& value, Error& error) const {
if (!isObject(value)) {
error.message = "transition must be an object";
return nullopt;
}
optional<TransitionOptions> result = TransitionOptions{};
auto duration = objectMember(value, "duration");
if (duration) {
auto number = toNumber(*duration);
if (!number) {
error.message = "duration must be a number";
return nullopt;
}
result->duration = { std::chrono::milliseconds(int64_t(*number)) };
}
auto delay = objectMember(value, "delay");
if (delay) {
auto number = toNumber(*delay);
if (!number) {
error.message = "delay must be a number";
return nullopt;
}
result->delay = { std::chrono::milliseconds(int64_t(*number)) };
}
return result;
}
} // namespace conversion
} // namespace style
} // namespace mbgl
|