Boost logo

Ublas :

From: Michael Stevens (m-stevens_at_[hidden])
Date: 2005-01-10 15:00:56


Thomas,

Sorry for forgeting about this.

Looking at "io.hpp" the reason is clear. "operator >>" is only defined for the
dense matrix and vector types. By contrast "operator <<" is defined for all
matrix_expressions and vector_expression types which covers all the Matrix
and Vector Containers.

Although this may seem bzar there is a reasonable logic behind it! All
Containers other then the dense containers have element constraints such as
zero or dependant (such symmetric) constraints. Ready such Containers will
often results in various runtime error or surprises.

We seem to have a couple of options
        a) Leave io.hpp as it is and document why only dense are read
        b) Change the "operator >>" definitions to use matrix/vector_expression
        c) Attempt to provide specialisations for all the uBLAS Container types

Michael