1 | 250,256c250,285
|
---|
2 | < // No specializations for:
|
---|
3 | < // lcast_src_length<char, signed char>
|
---|
4 | < // lcast_src_length<char, unsigned char>
|
---|
5 | < // lcast_src_length<char, signed char*>
|
---|
6 | < // lcast_src_length<char, unsigned char*>
|
---|
7 | < // lcast_src_length<char, signed char const*>
|
---|
8 | < // lcast_src_length<char, unsigned char const*>
|
---|
9 | ---
|
---|
10 | > template<>
|
---|
11 | > struct lcast_src_length<char, signed char>
|
---|
12 | > {
|
---|
13 | > BOOST_STATIC_CONSTANT(std::size_t, value = 1);
|
---|
14 | > static void check_coverage() {}
|
---|
15 | > };
|
---|
16 | > template<>
|
---|
17 | > struct lcast_src_length<char, unsigned char>
|
---|
18 | > {
|
---|
19 | > BOOST_STATIC_CONSTANT(std::size_t, value = 1);
|
---|
20 | > static void check_coverage() {}
|
---|
21 | > };
|
---|
22 | > template<>
|
---|
23 | > struct lcast_src_length<char, signed char*>
|
---|
24 | > {
|
---|
25 | > BOOST_STATIC_CONSTANT(std::size_t, value = 1);
|
---|
26 | > static void check_coverage() {}
|
---|
27 | > };
|
---|
28 | > template<>
|
---|
29 | > struct lcast_src_length<char, unsigned char*>
|
---|
30 | > {
|
---|
31 | > BOOST_STATIC_CONSTANT(std::size_t, value = 1);
|
---|
32 | > static void check_coverage() {}
|
---|
33 | > };
|
---|
34 | > template<>
|
---|
35 | > struct lcast_src_length<char, signed char const*>
|
---|
36 | > {
|
---|
37 | > BOOST_STATIC_CONSTANT(std::size_t, value = 1);
|
---|
38 | > static void check_coverage() {}
|
---|
39 | > };
|
---|
40 | > template<>
|
---|
41 | > struct lcast_src_length<char, unsigned char const*>
|
---|
42 | > {
|
---|
43 | > BOOST_STATIC_CONSTANT(std::size_t, value = 1);
|
---|
44 | > static void check_coverage() {}
|
---|
45 | > };
|
---|
46 | 823a853,854
|
---|
47 | > bool operator<<(unsigned char);
|
---|
48 | > bool operator<<(signed char);
|
---|
49 | 826a858,859
|
---|
50 | > bool operator<<(unsigned char const*);
|
---|
51 | > bool operator<<(signed char const*);
|
---|
52 | 1052a1086,1087
|
---|
53 | > bool operator>>(unsigned char&);
|
---|
54 | > bool operator>>(signed char&);
|
---|
55 | 1093a1129,1156
|
---|
56 | > template<typename CharT, class Base, class Traits>
|
---|
57 | > inline bool lexical_stream_limited_src<CharT,Base,Traits>::operator<<(
|
---|
58 | > unsigned char ch)
|
---|
59 | > {
|
---|
60 | > return ((*this) << static_cast<char>(ch));
|
---|
61 | > }
|
---|
62 | >
|
---|
63 | > template<typename CharT, class Base, class Traits>
|
---|
64 | > inline bool lexical_stream_limited_src<CharT,Base,Traits>::operator<<(
|
---|
65 | > signed char ch)
|
---|
66 | > {
|
---|
67 | > return ((*this) << static_cast<char>(ch));
|
---|
68 | > }
|
---|
69 | >
|
---|
70 | > template<typename CharT, class Base, class Traits>
|
---|
71 | > inline bool lexical_stream_limited_src<CharT,Base,Traits>::operator<<(
|
---|
72 | > unsigned char const* ch)
|
---|
73 | > {
|
---|
74 | > return ((*this) << reinterpret_cast<char const*>(ch));
|
---|
75 | > }
|
---|
76 | >
|
---|
77 | > template<typename CharT, class Base, class Traits>
|
---|
78 | > inline bool lexical_stream_limited_src<CharT,Base,Traits>::operator<<(
|
---|
79 | > signed char const* ch)
|
---|
80 | > {
|
---|
81 | > return ((*this) << reinterpret_cast<char const*>(ch));
|
---|
82 | > }
|
---|
83 | >
|
---|
84 | 1258a1322,1349
|
---|
85 | > template<typename CharT, class Base, class Traits>
|
---|
86 | > inline bool lexical_stream_limited_src<CharT,Base,Traits>::operator>>(
|
---|
87 | > unsigned char& output)
|
---|
88 | > {
|
---|
89 | > BOOST_STATIC_ASSERT( sizeof(CharT) == sizeof(unsigned char) );
|
---|
90 | > bool const ok = (finish - start == 1);
|
---|
91 | > if(ok) {
|
---|
92 | > CharT out;
|
---|
93 | > Traits::assign(out, *start);
|
---|
94 | > output = static_cast<signed char>(out);
|
---|
95 | > }
|
---|
96 | > return ok;
|
---|
97 | > }
|
---|
98 | >
|
---|
99 | > template<typename CharT, class Base, class Traits>
|
---|
100 | > inline bool lexical_stream_limited_src<CharT,Base,Traits>::operator>>(
|
---|
101 | > signed char& output)
|
---|
102 | > {
|
---|
103 | > BOOST_STATIC_ASSERT( sizeof(CharT) == sizeof(signed char) );
|
---|
104 | > bool const ok = (finish - start == 1);
|
---|
105 | > if(ok) {
|
---|
106 | > CharT out;
|
---|
107 | > Traits::assign(out, *start);
|
---|
108 | > output = static_cast<signed char>(out);
|
---|
109 | > }
|
---|
110 | > return ok;
|
---|
111 | > }
|
---|
112 | >
|
---|
113 | 1316,1320c1407,1412
|
---|
114 | < ::boost::type_traits::ice_or<
|
---|
115 | < ::boost::type_traits::ice_not< is_integral<Target>::value >::value,
|
---|
116 | < is_same<Target, signed char>::value,
|
---|
117 | < is_same<Target, unsigned char>::value
|
---|
118 | < >::value
|
---|
119 | ---
|
---|
120 | > // ::boost::type_traits::ice_or<
|
---|
121 | > ::boost::type_traits::ice_not< is_integral<Target>::value >::value
|
---|
122 | > // ,
|
---|
123 | > // is_same<Target, signed char>::value,
|
---|
124 | > // is_same<Target, unsigned char>::value
|
---|
125 | > // >::value
|
---|