~ubuntu-branches/debian/sid/boost1.49/sid

« back to all changes in this revision

Viewing changes to boost/archive/wcslen.hpp

  • Committer: Package Import Robot
  • Author(s): Steve M. Robbins
  • Date: 2012-02-26 00:31:44 UTC
  • Revision ID: package-import@ubuntu.com-20120226003144-eaytp12cbf6ubpms
Tags: upstream-1.49.0
ImportĀ upstreamĀ versionĀ 1.49.0

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#ifndef BOOST_ARCHIVE_WCSLEN_HPP
 
2
#define BOOST_ARCHIVE_WCSLEN_HPP
 
3
 
 
4
// MS compatible compilers support #pragma once
 
5
#if defined(_MSC_VER) && (_MSC_VER >= 1020)
 
6
# pragma once
 
7
#endif
 
8
 
 
9
/////////1/////////2/////////3/////////4/////////5/////////6/////////7/////////8
 
10
// wcslen.hpp:
 
11
 
 
12
// (C) Copyright 2002 Robert Ramey - http://www.rrsd.com . 
 
13
// Use, modification and distribution is subject to the Boost Software
 
14
// License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
 
15
// http://www.boost.org/LICENSE_1_0.txt)
 
16
 
 
17
//  See http://www.boost.org for updates, documentation, and revision history.
 
18
 
 
19
#include <cstddef> // size_t
 
20
#include <boost/config.hpp>
 
21
#if defined(BOOST_NO_STDC_NAMESPACE)
 
22
namespace std{ 
 
23
    using ::size_t; 
 
24
} // namespace std
 
25
#endif
 
26
 
 
27
#ifndef BOOST_NO_CWCHAR
 
28
 
 
29
// a couple of libraries which include wchar_t don't include
 
30
// wcslen
 
31
 
 
32
#if defined(BOOST_DINKUMWARE_STDLIB) && BOOST_DINKUMWARE_STDLIB < 306 \
 
33
|| defined(__LIBCOMO__) 
 
34
 
 
35
namespace std {
 
36
inline std::size_t wcslen(const wchar_t * ws)
 
37
{
 
38
    const wchar_t * eows = ws;
 
39
    while(* eows != 0)
 
40
        ++eows;
 
41
    return eows - ws;
 
42
}
 
43
} // namespace std
 
44
 
 
45
#else
 
46
 
 
47
#include <cwchar>
 
48
#ifdef BOOST_NO_STDC_NAMESPACE
 
49
namespace std{ using ::wcslen; }
 
50
#endif
 
51
 
 
52
#endif // wcslen
 
53
 
 
54
#endif //BOOST_NO_CWCHAR
 
55
 
 
56
#endif //BOOST_ARCHIVE_WCSLEN_HPP