diff --git a/toml/comments.hpp b/toml/comments.hpp index e5d88f5..ef67de4 100644 --- a/toml/comments.hpp +++ b/toml/comments.hpp @@ -105,8 +105,6 @@ struct preserve_comments void push_back(std::string&& v) {comments.push_back(std::move(v));} void pop_back() {comments.pop_back();} - template - void emplace_back(Ts&& ... args) {comments.emplace_back(std::forward(args)...);} template void emplace_back(Ts&& ... args) {comments.emplace_back(std::forward(args)...);} @@ -148,26 +146,26 @@ struct preserve_comments const_reverse_iterator crbegin() const noexcept {return comments.crbegin();} const_reverse_iterator crend() const noexcept {return comments.crend();} - friend bool operator==(const discard_comments& lhs, const discard_comments& rhs); - friend bool operator!=(const discard_comments& lhs, const discard_comments& rhs); - friend bool operator< (const discard_comments& lhs, const discard_comments& rhs); - friend bool operator<=(const discard_comments& lhs, const discard_comments& rhs); - friend bool operator> (const discard_comments& lhs, const discard_comments& rhs); - friend bool operator>=(const discard_comments& lhs, const discard_comments& rhs); + friend bool operator==(const preserve_comments& lhs, const preserve_comments& rhs); + friend bool operator!=(const preserve_comments& lhs, const preserve_comments& rhs); + friend bool operator< (const preserve_comments& lhs, const preserve_comments& rhs); + friend bool operator<=(const preserve_comments& lhs, const preserve_comments& rhs); + friend bool operator> (const preserve_comments& lhs, const preserve_comments& rhs); + friend bool operator>=(const preserve_comments& lhs, const preserve_comments& rhs); private: container_type comments; }; -inline bool operator==(const discard_comments& lhs, const discard_comments& rhs) {return lhs.comments == rhs.comments;} -inline bool operator!=(const discard_comments& lhs, const discard_comments& rhs) {return lhs.comments != rhs.comments;} -inline bool operator< (const discard_comments& lhs, const discard_comments& rhs) {return lhs.comments < rhs.comments;} -inline bool operator<=(const discard_comments& lhs, const discard_comments& rhs) {return lhs.comments <= rhs.comments;} -inline bool operator> (const discard_comments& lhs, const discard_comments& rhs) {return lhs.comments > rhs.comments;} -inline bool operator>=(const discard_comments& lhs, const discard_comments& rhs) {return lhs.comments >= rhs.comments;} +inline bool operator==(const preserve_comments& lhs, const preserve_comments& rhs) {return lhs.comments == rhs.comments;} +inline bool operator!=(const preserve_comments& lhs, const preserve_comments& rhs) {return lhs.comments != rhs.comments;} +inline bool operator< (const preserve_comments& lhs, const preserve_comments& rhs) {return lhs.comments < rhs.comments;} +inline bool operator<=(const preserve_comments& lhs, const preserve_comments& rhs) {return lhs.comments <= rhs.comments;} +inline bool operator> (const preserve_comments& lhs, const preserve_comments& rhs) {return lhs.comments > rhs.comments;} +inline bool operator>=(const preserve_comments& lhs, const preserve_comments& rhs) {return lhs.comments >= rhs.comments;} -inline void swap(discard_comments& lhs, discard_comments& rhs) +inline void swap(preserve_comments& lhs, preserve_comments& rhs) { lhs.swap(rhs); return; @@ -263,7 +261,7 @@ struct discard_comments using reference = std::string&; using const_reference = std::string const&; using pointer = std::string*; - using const_pointer = std::string const&; + using const_pointer = std::string const*; using iterator = detail::empty_iterator; using const_iterator = detail::empty_iterator; using reverse_iterator = detail::empty_iterator; @@ -298,7 +296,7 @@ struct discard_comments iterator insert(const_iterator, std::initializer_list) {return iterator{};} template - iterator emplace(const_iterator, Ts&&) {return iterator{};} + iterator emplace(const_iterator, Ts&& ...) {return iterator{};} iterator erase(const_iterator) {return iterator{};} iterator erase(const_iterator, const_iterator) {return iterator{};} @@ -308,8 +306,6 @@ struct discard_comments void push_back(std::string&& ) {return;} void pop_back() {return;} - template - void emplace_back(Ts&& ...) {return;} template void emplace_back(Ts&& ...) {return;} @@ -360,7 +356,7 @@ inline bool operator==(const discard_comments&, const discard_comments&) noexcep inline bool operator!=(const discard_comments&, const discard_comments&) noexcept {return false;} inline bool operator< (const discard_comments&, const discard_comments&) noexcept {return false;} inline bool operator<=(const discard_comments&, const discard_comments&) noexcept {return true;} -inline bool operator> (const discard_comments&, const discard_comments&) noexcept {return false} +inline bool operator> (const discard_comments&, const discard_comments&) noexcept {return false;} inline bool operator>=(const discard_comments&, const discard_comments&) noexcept {return true;} inline void swap(const discard_comments&, const discard_comments&) noexcept {return;}