跳转至

Json.reset

template<typename T = Null>
requires json_type<Json, T>
void reset() noexcept;

重置内部数据为指定类型,默认为 Null 类型,可以指定模板参数从而重载为不同类型。

内部实现

内部实现
template<typename T = Null>
requires json_type<Json, T>
void reset() noexcept {
    if constexpr(std::is_same_v<T, Null>) {
        m_data = Null{};
    } else if constexpr(std::is_same_v<T, Bool>) {
        m_data = Bool{};
    } else if constexpr(std::is_same_v<T, Number>) {
        m_data = Number{};
    } else if constexpr(std::is_same_v<T, String>) {
        m_data = String{};
    } else if constexpr(std::is_same_v<T, Array>) {
        m_data = Array{};
    } else if constexpr(std::is_same_v<T, Object>) {
        m_data = Object{};
    }
}

异常

无异常。

复杂度

常数。

版本

v0.8.0 至今。