Commit Graph

86 Commits

Author SHA1 Message Date
Jeremy Siek
ea4c7c7dd9 Removed workaround for older MIPSpro compiler. The workaround was
preventing the proper functionality of the underlying iterator being
carried forward into the iterator adaptor.

Also added is_bidirectional enum to avoid EDG compiler error.


[SVN r9123]
2001-02-11 18:57:31 +00:00
Dave Abrahams
fd6ba58d5e Borland fixes up the wazoo. It finally works!
[SVN r9114]
2001-02-11 16:09:22 +00:00
Dave Abrahams
268e70faa1 Reinstate one of John's fixes
[SVN r9113]
2001-02-11 16:06:12 +00:00
Dave Abrahams
170b44763d Clean up after John Maddocks's (finally effective!) Borland fixes
[SVN r9111]
2001-02-11 14:07:11 +00:00
John Maddock
b2701f9f78 Borland compiler fixes
[SVN r9110]
2001-02-11 12:50:06 +00:00
Dave Abrahams
ad4c5ab089 Use new iterator_adaptor<> interface
[SVN r9106]
2001-02-11 03:10:01 +00:00
Dave Abrahams
c585adde71 Removed traits argument from iterator_adaptor<> and switched to explicit trait
specification for maximum ease-of-use.

Added comments to detail::iterator_defaults<>

Began using detail::iterator_defaults<> unconditionally for code clarity

Changed uses of `Iterator' to `Base' where non-iterators can be used.


[SVN r9104]
2001-02-11 03:05:50 +00:00
Dave Abrahams
c5f24d0d72 A baby step that worked.
[SVN r9095]
2001-02-10 23:14:42 +00:00
Dave Abrahams
dbb99b1cf3 Rolled in supposed Borland fixes from John Maddock, but not seeing any improvement yet
[SVN r9093]
2001-02-10 20:23:35 +00:00
Dave Abrahams
be44a4714b Rolled in supposed Borland fixes from John Maddock, but not seeing any
improvement yet

Changed argument order to indirect_ generator, for convenience in the case of
input iterators (where Reference must be a value type).

Removed derivation of filter_iterator_policies from default_iterator_policies,
since the iterator category is likely to be reduced (we don't want to allow
illegal operations like decrement).

Support for a simpler filter iterator interface.


[SVN r9092]
2001-02-10 20:22:05 +00:00
Jeremy Siek
e9f24023d4 completely removed constructor that was #if 0'd
[SVN r9076]
2001-02-10 17:57:51 +00:00
Jens Maurer
51616fa845 removed superfluous "typename"
[SVN r9068]
2001-02-10 09:34:19 +00:00
Dave Abrahams
d7884b5613 *** empty log message ***
[SVN r9066]
2001-02-10 00:35:45 +00:00
Dave Abrahams
15b5b66776 Improved interface to indirect_ and reverse_ iterators
[SVN r9065]
2001-02-10 00:26:55 +00:00
Dave Abrahams
6f90982a45 roll back mistaken changes
[SVN r9062]
2001-02-09 21:04:09 +00:00
Dave Abrahams
bfda34e9e0 try a better interface to indirect iterators
[SVN r9060]
2001-02-09 19:26:19 +00:00
Dave Abrahams
5bfc03ed4a Cleaned up redundant test is_integral<T> || is_same<T,char> -> is_integral<T>
[SVN r9059]
2001-02-09 15:43:57 +00:00
Dave Abrahams
490bee3a06 Factored out is_numeric computation. Borland still unhappy :(
[SVN r9057]
2001-02-09 15:21:02 +00:00
Dave Abrahams
8174963a45 Rolled back Jeremy's new constructor for now; it was causing problems with counting_iterator_test
Attempted fix for Borland


[SVN r9055]
2001-02-09 15:17:17 +00:00
Jeremy Siek
86e183c75e MSVC porting
[SVN r9052]
2001-02-09 05:44:13 +00:00
Jeremy Siek
a94c9d0db2 Added iterator constructor to allow const adaptor
from non-const adaptee.

      Changed make_xxx to pass iterators by-value to
      get arrays converted to pointers.

      Removed InnerIterator template parameter from
      indirect_iterator_generator.

      Rearranged parameters for make_filter_iterator


[SVN r9050]
2001-02-09 05:26:01 +00:00
Jeremy Siek
8a73dcd052 Fixed bidirectional iterator test so that --i is no longer a precondition.
[SVN r9048]
2001-02-09 04:29:11 +00:00
Dave Abrahams
8496571204 Fold in Jeremy's improvement to make_reverse_iterator
[SVN r9042]
2001-02-09 03:29:11 +00:00
Dave Abrahams
bafe0703a6 Beginning of a failed attempt to appease Borland
[SVN r9041]
2001-02-09 03:27:40 +00:00
Dave Abrahams
b05b38810c just whitespace
[SVN r9030]
2001-02-08 04:45:18 +00:00
Jeremy Siek
edf17ba001 put indirect_iterator_pair_generator back in
[SVN r9027]
2001-02-08 03:41:23 +00:00
Jeremy Siek
ee9f140fae Removed all pair generator's except for projection and
some const adaptor generators.

Added make_xxx_iterator() helper functions for remaining
iterator adaptors.

Removed some traits template parameters where they
where no longer needed thanks to detail::iterator_traits.

Moved some of the compile-time logic into enums for
EDG compatibility.


[SVN r9024]
2001-02-08 03:07:33 +00:00
Dave Abrahams
762e603013 rename counting_iterator() -> make_counting_iterator()
[SVN r9015]
2001-02-07 22:27:02 +00:00
Dave Abrahams
6eeeb23332 Removed iterator_adaptor_pair_generator and
reverse_iterator_pair_generator (more such culling to come)

Improved comments

Changed all uses of std::iterator_traits as default arguments
to boost::detail::iterator_traits for improved utility in
non-generic contexts

Fixed naming convention of non-template parameter names


[SVN r9003]
2001-02-07 17:22:16 +00:00
Dave Abrahams
07482538ed Produce operator-> proxy objects for InputIterators
Added static assertions to do some basic concept checks

Renamed single-type generators -> xxx_generator
Renamed const/nonconst iterator generators -> xxx_pair_generator

Added make_transform_iterator(iter, function)

The existence of boost::detail::iterator_traits allowed many
template arguments to be defaulted. Some arguments had to be
moved to accomplish it.


[SVN r8994]
2001-02-07 05:15:42 +00:00
Dave Abrahams
d17e8dae9b codewarrior bug workaround
[SVN r8989]
2001-02-06 23:59:02 +00:00
Jeremy Siek
5e1bc30db9 1st draft
[SVN r8939]
2001-02-05 05:39:43 +00:00
Jeremy Siek
e8389d5f49 start of iterator concept tests
[SVN r8938]
2001-02-05 05:38:44 +00:00
Jeremy Siek
332f18cf9f changed category for transform iterator traits to input iterator
[SVN r8936]
2001-02-04 23:45:57 +00:00
Dave Abrahams
7aea7b7881 Factored counting_iterator stuff into boost/counting_iterator.hpp
[SVN r8935]
2001-02-04 23:37:01 +00:00
Dave Abrahams
3e6796ab91 Fixed lvalue test
[SVN r8934]
2001-02-04 23:35:26 +00:00
Dave Abrahams
893b5c0e25 Moved contents to boost/iterator_adaptors.hpp
[SVN r8933]
2001-02-04 23:34:29 +00:00
Dave Abrahams
41c334d718 MWERKS bug workaround
[SVN r8931]
2001-02-04 20:35:23 +00:00
Dave Abrahams
05336f45c4 Support for user-defined iterator categories
[SVN r8930]
2001-02-04 20:33:45 +00:00
Dave Abrahams
90299982a6 Added counting_iterator_generator; updated comments
[SVN r8928]
2001-02-04 19:38:28 +00:00
Dave Abrahams
93b54c15c8 Inital checkin
[SVN r8927]
2001-02-04 19:11:30 +00:00
Dave Abrahams
25f9acabac corrected preconditions
[SVN r8925]
2001-02-04 19:00:03 +00:00
Dave Abrahams
bb2ffadade Added lvalue test
[SVN r8922]
2001-02-04 18:25:55 +00:00
Dave Abrahams
b6aa32721f Inital checkin
[SVN r8813]
2001-01-30 16:00:37 +00:00
Jeremy Siek
8f41e88f85 fixed bug in assignment operator under VC++, which was the cause of
the access violation error in graph/test/graph.cpp. The root
  of this bug is in compressed pair, which VC++ has a hard time
  generating a correct operator= for.


[SVN r8767]
2001-01-25 04:57:16 +00:00
Dave Abrahams
58b56fbabb Initial checkin
[SVN r8757]
2001-01-24 18:36:52 +00:00
Jeremy Siek
9a4b0b576d added filter iterator
[SVN r8735]
2001-01-23 19:09:30 +00:00
Jeremy Siek
c948483ec1 added some #ifdefs to prevent compilation of workaround code
[SVN r8688]
2001-01-21 20:28:02 +00:00
Jeremy Siek
a31a89ae7d fixed some mwerks compiler errors
[SVN r8683]
2001-01-21 19:33:06 +00:00
Dave Abrahams
b8ccd48fa3 Moved type<> to boost/type.hpp
[SVN r8678]
2001-01-21 06:20:20 +00:00