3 #ifndef PARAGRAPH_LIST_H
4 #define PARAGRAPH_LIST_H
18 typedef std::bidirectional_iterator_tag iterator_category;
20 typedef Paragraph * value_type;
22 typedef ptrdiff_t difference_type;
24 typedef Paragraph * pointer;
26 typedef Paragraph & reference;
32 reference operator*();
36 iterator & operator++();
38 iterator operator++(int);
40 iterator & operator--();
42 iterator operator--(int);
50 iterator insert(iterator it, Paragraph * par);
54 void erase(iterator it);
58 iterator begin() const;
64 void set(Paragraph *);
66 void push_back(Paragraph *);
68 Paragraph const & front() const;
72 Paragraph const & back() const;
86 typedef std::pair<ParagraphList::iterator, int> PitPosPair;
91 bool operator==(ParagraphList::iterator const & i1,
92 ParagraphList::iterator const & i2);
94 bool operator!=(ParagraphList::iterator const & i1,
95 ParagraphList::iterator const & i2);