aboutsummaryrefslogtreecommitdiffhomepage
path: root/experimental/skottie/SkottieParser.h
blob: b805484cd0ff974327f90de4fc1802bc37046dec (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
/*
 * Copyright 2018 Google Inc.
 *
 * Use of this source code is governed by a BSD-style license that can be
 * found in the LICENSE file.
 */

#ifndef SkottieParser_DEFINED
#define SkottieParser_DEFINED

namespace Json { class Value; }

namespace skottie {

template <typename T>
bool Parse(const Json::Value&, T*);

template <typename T>
static inline T ParseDefault(const Json::Value& jv, const T& defaultValue) {
    T v;
    if (!Parse<T>(jv, &v))
        v = defaultValue;
    return v;
}

} // nasmespace skottie

#endif // SkottieParser_DEFINED