From: Dineshkumar Bhaskaran Date: Fri, 5 Jun 2020 12:41:37 +0000 (+0000) Subject: [MsgPack] Added a convenience operator X-Git-Tag: llvmorg-12-init~4011 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=f1b2be416dc52d9e2323773c26ba58101acd21ba;p=platform%2Fupstream%2Fllvm.git [MsgPack] Added a convenience operator Summary: Added "not equal to" operator for DocNode comparison Reviewers: arsenm, scott.linder, saiislam Reviewed By: saiislam Subscribers: wdng, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D81250 --- diff --git a/llvm/include/llvm/BinaryFormat/MsgPackDocument.h b/llvm/include/llvm/BinaryFormat/MsgPackDocument.h index 2bf9ed8..91778f6 100644 --- a/llvm/include/llvm/BinaryFormat/MsgPackDocument.h +++ b/llvm/include/llvm/BinaryFormat/MsgPackDocument.h @@ -181,6 +181,11 @@ public: return !(Lhs < Rhs) && !(Rhs < Lhs); } + /// Inequality operator + friend bool operator!=(const DocNode &Lhs, const DocNode &Rhs) { + return !(Lhs == Rhs); + } + /// Convert this node to a string, assuming it is scalar. std::string toString() const; diff --git a/llvm/unittests/BinaryFormat/MsgPackDocumentTest.cpp b/llvm/unittests/BinaryFormat/MsgPackDocumentTest.cpp index f301567..0a7b59af 100644 --- a/llvm/unittests/BinaryFormat/MsgPackDocumentTest.cpp +++ b/llvm/unittests/BinaryFormat/MsgPackDocumentTest.cpp @@ -13,6 +13,16 @@ using namespace llvm; using namespace msgpack; +TEST(MsgPackDocument, DocNodeTest) { + Document Doc; + + DocNode Int1 = Doc.getNode(1), Int2 = Doc.getNode(2); + DocNode Str1 = Doc.getNode("ab"), Str2 = Doc.getNode("ab"); + + ASSERT_TRUE(Int1 != Int2); + ASSERT_TRUE(Str1 == Str2); +} + TEST(MsgPackDocument, TestReadInt) { Document Doc; bool Ok = Doc.readFromBlob(StringRef("\xd0\x00", 2), /*Multi=*/false);