class Read final
{
public:
- Read(const PtrLink<Bag, BagInfo> *bag_link, Bag::Reader *r)
+ // NOTE bag_link is unnecessary
+ // TODO Rewrite constructor
+ Read(const PtrLink<Bag, BagInfo> *, Bag::Reader *r)
{
// Initialize link and reader
- link(bag_link);
reader(r);
}
Bag::Reader *reader(void) const { return _reader; }
void reader(Bag::Reader *r) { _reader = r; }
-public:
- void link(const PtrLink<Bag, BagInfo> *l) { _link = l; }
-
-private:
- const PtrLink<Bag, BagInfo> *_link;
-
private:
Bag *_bag = nullptr;
Bag::Reader *_reader = nullptr;
{
if (_bag)
{
- if (_link)
+ // TODO Remove unnecessary indentation
{
- auto info = _link->find(_bag);
+ auto info = _bag->_info.get();
assert(info != nullptr);
info->reads()->erase(this);
}
if (bag)
{
_bag = bag;
- if (_link)
+ // TODO Remove unnecessary indentation
{
- auto info = _link->find(_bag);
+ auto info = _bag->_info.get();
assert(info != nullptr);
info->reads()->insert(this);
}