/// get the same result by directly calling get() on \c next, it would
/// help encourage the use of more efficient usage if we provide an
/// explicit accessor.
- RdataSet* getNext() const { return (next.get()); }
+ //const RdataSet* getNext() const { return (next.get()); }
+ const RdataSet* getNext() const { return (next.get()); }
+
+ /// \brief Return the bare pointer to the next node, mutable version.
+ RdataSet* getNext() { return (next.get()); }
/// \brief Return the number of RDATAs stored in the \c RdataSet.
size_t getRdataCount() const { return (rdata_count_); }
ConstRRsetPtr());
// By default, the next pointer should be NULL (already tested in other
- // test cases), which should be the case with getNext()
+ // test cases), which should be the case with getNext(). We test both
+ // mutable and immutable versions of getNext().
EXPECT_EQ(static_cast<RdataSet*>(NULL), rdataset->getNext());
+ EXPECT_EQ(static_cast<const RdataSet*>(NULL),
+ static_cast<const RdataSet*>(rdataset)->getNext());
// making a link (it would form an infinite loop, but it doesn't matter
// in this test), and check the pointer returned by getNext().
rdataset->next = rdataset;
- EXPECT_EQ(rdataset, rdataset->getNext());
+ EXPECT_EQ(rdataset, static_cast<const RdataSet*>(rdataset)->getNext());
RdataSet::destroy(mem_sgmt_, RRClass::IN(), rdataset);
}