<div dir="ltr">Test cases?<br>Got a usage in mind?</div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Mar 29, 2016 at 2:34 PM, Matthias Braun via llvm-commits <span dir="ltr"><<a href="mailto:llvm-commits@lists.llvm.org" target="_blank">llvm-commits@lists.llvm.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">MatzeB created this revision.<br>
MatzeB added reviewers: dblaikie, echristo, qcolombet.<br>
MatzeB added a subscriber: llvm-commits.<br>
MatzeB set the repository for this revision to rL LLVM.<br>
Herald added a subscriber: mcrosier.<br>
<br>
This allows BitVector to be used in contexts exepcting a std::set or<br>
DenseSet like API.<br>
<br>
Repository:<br>
  rL LLVM<br>
<br>
<a href="http://reviews.llvm.org/D18578" rel="noreferrer" target="_blank">http://reviews.llvm.org/D18578</a><br>
<br>
Files:<br>
  include/llvm/ADT/BitVector.h<br>
<br>
Index: include/llvm/ADT/BitVector.h<br>
===================================================================<br>
--- include/llvm/ADT/BitVector.h<br>
+++ include/llvm/ADT/BitVector.h<br>
@@ -295,6 +295,23 @@<br>
     return *this;<br>
   }<br>
<br>
+  /// Set bit \p Idx to true. This function allows BitVector to be used in<br>
+  /// contexts expecting std::set/DenseSet like API.<br>
+  std::pair<reference, bool> insert(unsigned Idx) {<br>
+    reference ref(*this, Idx);<br>
+    bool Res = !ref;<br>
+    ref = true;<br>
+    return std::make_pair(ref, Res);<br>
+  }<br>
+<br>
+  /// Clear bit \p Idx. This function allows BitVector to be used in contexts<br>
+  /// expecting std::set/DenseSet like API.<br>
+  bool erase(unsigned Idx) {<br>
+    bool Res = test(Idx);<br>
+    reset(Idx);<br>
+    return Res;<br>
+  }<br>
+<br>
   BitVector &flip() {<br>
     for (unsigned i = 0; i < NumBitWords(size()); ++i)<br>
       Bits[i] = ~Bits[i];<br>
<br>
<br>
<br>_______________________________________________<br>
llvm-commits mailing list<br>
<a href="mailto:llvm-commits@lists.llvm.org">llvm-commits@lists.llvm.org</a><br>
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits</a><br>
<br></blockquote></div><br></div>