Boost logo

Boost :

From: Thorsten Ottosen (nesotto_at_[hidden])
Date: 2004-05-04 18:50:08


Hi Roland,

Thanks for your review.

| > - What is your evaluation of the documentation?
|
| From the docs:
|
| "It is worth noticing that some functionality requires partial template
| specialization, in particular, full array support does"
|
| It would be nice if the doc states in more detail *which* functions require
| partial template specialization.

ok, its all functions and type-gerators for T[] when T is not char or wchar_t. I guess I should
just remove "some" and type "all".

| "(remark: this is a very small problem since one would use boost::array<>
| anyway)"
|
| Well, if I knew the size of the array at compile-time; which brings me to

well, you always know the size of T[sz] at compile time.

| What I miss is support for scoped_array<> and shared_array<>;
| I guess, however, that it is difficult or even impossible to obtain the
| number of elements of a shared_array<> - correct?

yes. Only strings are null-terminated.

| Since other Boosters already gave more elaborate feedback on the design etc.,
| I further focused on a special aspect of collection_traits.
|
| My primary interest is the boost/view library (also in the sandbox).
| Since views are meant to be lightweight wrappers with a collection-like
| interface, they should work together with collection_traits - and, in
| fact, all views submitted so far pass this test (see attached file).
|
| I further noticed that one view (range_view) became obsolete, and
| that other views might be easier to implement now with the help of
| collection_traits.

great. If you are the man in charge of the view library, I think you should contact this Tom Houlder
 thoulder_at_[hidden] . He is working on something similar. You might also want to contact
John Torjo (john_at_[hidden]).

| template<class ContainerT>
| void test_container_traits_functions( ContainerT c )
| {

why are you passing by value?

| boost::shared_array<int> sa( new int[7] );
| //test_array_functions( sa ); // Wishful thinking.

not if the smart pointer would save its size and have a .size() function.

br

Thorsten


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk