3 #ifndef PARAGRAPH_LIST_H
4 #define PARAGRAPH_LIST_H
17 typedef std::bidirectional_iterator_tag iterator_category;
19 typedef Paragraph * value_type;
21 typedef ptrdiff_t difference_type;
23 typedef Paragraph * pointer;
25 typedef Paragraph & reference;
31 reference operator*();
35 iterator & operator++();
37 iterator operator++(int);
39 iterator & operator--();
41 iterator operator--(int);
51 void erase(iterator it);
55 iterator begin() const;
61 void set(Paragraph *);
63 void push_back(Paragraph *);
65 Paragraph const * back() const;
78 bool operator==(ParagraphList::iterator const & i1,
79 ParagraphList::iterator const & i2);
81 bool operator!=(ParagraphList::iterator const & i1,
82 ParagraphList::iterator const & i2);