diff --git a/filter_iterator.htm b/filter_iterator.htm index d9d4134..2c5225c 100644 --- a/filter_iterator.htm +++ b/filter_iterator.htm @@ -41,6 +41,7 @@ namespace boost { } +

The Filter Iterator Type Generator

@@ -56,12 +57,12 @@ parameters for each of the iterator's associated types.
 template <class Predicate, class BaseIterator,
-          class Value, class Pointer, class Reference, class Category, class Distance>
+          class Value, class Reference, class Pointer, class Category, class Distance>
 class filter_iterator_generator
 {
 public:
-  typedef ... type;          // the resulting filter iterator type which is iterator_adaptor
-  typedef ... policies_type; // the policies type for the iterator adaptor
+  typedef iterator_adaptor<...> type; // the resulting filter iterator type 
+  typedef ... policies_type;          // the policies type for the iterator adaptor
 }
 
diff --git a/indirect_iterator.htm b/indirect_iterator.htm index fda27b9..f6f5b6e 100644 --- a/indirect_iterator.htm +++ b/indirect_iterator.htm @@ -279,7 +279,7 @@ type of object that is accessed by dereferences in the base iterator twice.
If the base iterator is a model of Random Access Iterator then so is the resulting indirect iterator types. -If the base iterator supports less functionality than this the +If the base iterator supports less functionality the resulting indirect iterator types will also support less functionality. The resulting iterator type is mutable, and the resulting const_iterator type is constant. diff --git a/transform_iterator.htm b/transform_iterator.htm index f821759..6a13b04 100644 --- a/transform_iterator.htm +++ b/transform_iterator.htm @@ -27,7 +27,7 @@ function object, and then returns the result. The following
   value_type transform_iterator::operator*() const {
-    return f(*this->base_iterator);
+    return this->f(*this->base_iterator);
   }
 
@@ -48,6 +48,8 @@ namespace boost { } +
+

The Transform Iterator Type Generator

@@ -110,9 +112,13 @@ The output from this part is: AdaptableUnaryFunction -The function object that transforms each element in the iterator range. -If you want the resulting iterator to behave as an iterator, the result of the function -should be solely a function of its argument. +The function object that transforms each element in the iterator +range. The argument_type of the function object must match +the value type of the base iterator. The result_type of the +function object will be the resulting iterator's +value_type. If you want the resulting iterator to behave as +an iterator, the result of the function should be solely a function of +its argument.