Closed Reputeless closed 8 months ago
1. 寿命について
以前触れたように、寿命を延長出来るようにして、次のコードが通るようにするのがいいと思います。 https://discord.com/channels/443310697397354506/999983621408567326/1162390851624898581
寿命の延長を実装するなら、detail::JSONDetail::RefType
を std::shared_ptr<detail::JSONDetail::ValueType>
にするのがよさそうですね。
ありがとうございます。JSON
クラス、v0.6.15 以降で根本的に作り直したいので、寿命の延長関連は新規のほうで検討しましょう。そちらは別の Issue を立てます。
メンバ関数 clear
について → JSON
の .clear()
は少し特殊で、クリア後も JSONValueType
を保持する仕様になっています。例えば配列を .clear()
したら空の配列になるなど。
そのため、Invalid の .clear()
結果が Invalid であるのも不自然ではないと考えています。
レビューありがとうございました。 @Raclamusi @tomolatoon 気になった点は修正したので、これでマージする予定です。#1175 についても参加いただけると幸いです。
swap
を定義JSON::operator =(const std::initializer_list<std::pair<String, JSON>>& list)
およびJSON::operator =(const Array<JSON>& array)
が古い内容を消去していなかったバグを修正 #1166