#pragma once #include #include namespace mbgl { namespace style { namespace conversion { template <> struct Converter { public: template Result operator()(const V& value) const { if (!isObject(value)) { return Error { "transition must be an object" }; } TransitionOptions result; auto duration = objectMember(value, "duration"); if (duration) { auto number = toNumber(*duration); if (!number) { return Error { "duration must be a number" }; } result.duration = { std::chrono::milliseconds(int64_t(*number)) }; } auto delay = objectMember(value, "delay"); if (delay) { auto number = toNumber(*delay); if (!number) { return Error { "delay must be a number" }; } result.delay = { std::chrono::milliseconds(int64_t(*number)) }; } return result; } }; } // namespace conversion } // namespace style } // namespace mbgl