inline optional<float> toNumber(const mbgl::android::Value& value) {
    if (value.isNumber()) {
        return value.toNumber();
    } else {
        return {};
    }
}
inline optional<Value> toValue(const mbgl::android::Value& value) {
    if (value.isBool()) {
        return { value.toBool() };
    } else if (value.isString()) {
        return { value.toString() };
    } else if (value.isNumber()) {
       return { value.toNumber() };
    } else {
        return {};
    }
}
Пример #3
0
inline optional<Value> toValue(const mbgl::android::Value& value) {
    if (value.isNull()) {
        return {};
    } else if (value.isBool()) {
        return { value.toBool() };
    } else if (value.isString()) {
        return { value.toString() };
    } else if (value.isNumber()) {
        //Need to cast to a double here as the float is otherwise considered a bool...
        return { (double) value.toNumber() };
    } else {
        return {};
    }
}