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);
49 iterator insert(iterator it, Paragraph * par);
53 void erase(iterator it);
57 iterator begin() const;
63 void set(Paragraph *);
65 void push_back(Paragraph *);
67 Paragraph const * back() const;
80 bool operator==(ParagraphList::iterator const & i1,
81 ParagraphList::iterator const & i2);
83 bool operator!=(ParagraphList::iterator const & i1,
84 ParagraphList::iterator const & i2);