/usr/include/luabind/typeid.hpp is in libluabind-dev 0.9.1+dfsg-11.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 | // Copyright Daniel Wallin 2008. Use, modification and distribution is
// subject to the Boost Software License, Version 1.0. (See accompanying
// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
#ifndef LUABIND_TYPEID_081227_HPP
# define LUABIND_TYPEID_081227_HPP
# include <boost/operators.hpp>
# include <typeinfo>
# include <luabind/detail/primitives.hpp>
namespace luabind {
# ifdef BOOST_MSVC
# pragma warning(push)
// std::type_info::before() returns int, rather than bool.
// At least on MSVC7.1, this is true for the comparison
// operators as well.
# pragma warning(disable:4800)
# endif
class type_id
: public boost::less_than_comparable<type_id>
{
public:
type_id()
: id(&typeid(detail::null_type))
{}
type_id(std::type_info const& id)
: id(&id)
{}
bool operator!=(type_id const& other) const
{
return *id != *other.id;
}
bool operator==(type_id const& other) const
{
return *id == *other.id;
}
bool operator<(type_id const& other) const
{
return id->before(*other.id);
}
char const* name() const
{
return id->name();
}
private:
std::type_info const* id;
};
# ifdef BOOST_MSVC
# pragma warning(pop)
# endif
} // namespace luabind
#endif // LUABIND_TYPEID_081227_HPP
|