[uuid] Dependency on Boost.MPL & Boost.TypeTraits

Hello, The <boost/uuid/uuid.hpp> header currently has a dependency on <boost/mpl/bool.hpp> & <boost/type_traits/is_pod.hpp>. This is only used to declare the type_trait is_pod<uuids::uuid> AFAICT for the uuid_serialize.hpp header. No other part of the library seems to have any dependency on it. Here's my problem: By company policy I am not allowed to make any changes to a boost library header. The MPL & type_traits libraries are not currently authorized for use within our code. This means I can't use Boost.Uuid either. Is it possible for the above included headers to be enclosed within an inclusion guard like UUID_NO_TYPE_TRAITS_DEPENDENCY so that by defining this macro I can remove this dependency without having to change the <boost/uuid/uuid.hpp> header? Or better still since only uuid_serialize.hpp seems to need it this dependency might be moved there. Since we don't use Boost.Serialization in our code this will solve my problem. This will also serve the purpose of reducing the dependencies of the core part of the library and make it more modular. PS. I am not really sure if this belongs in this list or the boost-users mailing list. Thanks, -- Kedar Bodas, Think3 Designs Pvt. Ltd.

Kedar Bodas wrote:
Hello,
The <boost/uuid/uuid.hpp> header currently has a dependency on <boost/mpl/bool.hpp> & <boost/type_traits/is_pod.hpp>. This is only used to declare the type_trait is_pod<uuids::uuid> AFAICT for the uuid_serialize.hpp header. No other part of the library seems to have any dependency on it.
Here's my problem:
By company policy I am not allowed to make any changes to a boost library header. The MPL & type_traits libraries are not currently authorized for use within our code. This means I can't use Boost.Uuid either. Is it possible for the above included headers to be enclosed within an inclusion guard like UUID_NO_TYPE_TRAITS_DEPENDENCY so that by defining this macro I can remove this dependency without having to change the <boost/uuid/uuid.hpp> header? Or better still since only uuid_serialize.hpp seems to need it this dependency might be moved there. Since we don't use Boost.Serialization in our code this will solve my problem. This will also serve the purpose of reducing the dependencies of the core part of the library and make it more modular.
If you don't have a better response, you could stub these two files with the minimum. BTW, why your company doesn't authorize the use of type_traits and mpl? You will have a lot of libraries that you can not use due to this dependency. Best, Vicente -- View this message in context: http://old.nabble.com/-uuid--Dependency-on-Boost.MPL---Boost.TypeTraits-tp28... Sent from the Boost - Dev mailing list archive at Nabble.com.

On Mon, Jun 21, 2010 at 10:45 AM, Vicente Botet Escriba < vicente.botet@wanadoo.fr> wrote:
Kedar Bodas wrote:
Hello,
The <boost/uuid/uuid.hpp> header currently has a dependency on <boost/mpl/bool.hpp> & <boost/type_traits/is_pod.hpp>. This is only used to declare the type_trait is_pod<uuids::uuid> AFAICT for the uuid_serialize.hpp header. No other part of the library seems to have any dependency on it.
Here's my problem:
By company policy I am not allowed to make any changes to a boost library header. The MPL & type_traits libraries are not currently authorized for use within our code. This means I can't use Boost.Uuid either. Is it possible for the above included headers to be enclosed within an inclusion guard like UUID_NO_TYPE_TRAITS_DEPENDENCY so that by defining this macro I can
this dependency without having to change the <boost/uuid/uuid.hpp>
remove header?
Or better still since only uuid_serialize.hpp seems to need it this dependency might be moved there. Since we don't use Boost.Serialization in our code this will solve my problem. This will also serve the purpose of reducing the dependencies of the core part of the library and make it more modular.
If you don't have a better response, you could stub these two files with the minimum.
I wonder if that would fall under the policy of modifying boost files.
BTW, why your company doesn't authorize the use of type_traits and mpl? You will have a lot of libraries that you can not use due to this dependency.
Best, Vicente -- View this message in context: http://old.nabble.com/-uuid--Dependency-on-Boost.MPL---Boost.TypeTraits-tp28... Sent from the Boost - Dev mailing list archive at Nabble.com.
_______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
-- Steven Maraj http://www.marajservices.com
participants (3)
-
Kedar Bodas
-
Steven Maitlall
-
Vicente Botet Escriba