Changeset 1145 for trunk/libtorrent/src/torrent/object_raw_bencode.h
- Timestamp:
- 03/15/10 14:31:50 (2 years ago)
- Files:
-
- 1 modified
-
trunk/libtorrent/src/torrent/object_raw_bencode.h (modified) (5 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/libtorrent/src/torrent/object_raw_bencode.h
r1141 r1145 46 46 47 47 class raw_bencode; 48 class raw_value;49 48 class raw_string; 50 49 class raw_list; … … 104 103 105 104 bool is_empty() const { return m_size == 0; } 106 bool is_ raw_value() const{ return m_size && m_data[0] >= 'i'; }105 bool is_value() const { return m_size && m_data[0] >= 'i'; } 107 106 bool is_raw_string() const { return m_size && m_data[0] >= '0' && m_data[0] <= '9'; } 108 107 bool is_raw_list() const { return m_size && m_data[0] >= 'l'; } 109 108 bool is_raw_map() const { return m_size && m_data[0] >= 'd'; } 110 109 111 raw_value as_raw_value() const;112 110 raw_string as_raw_string() const; 113 111 raw_list as_raw_list() const; … … 117 115 }; 118 116 119 class raw_value : protected raw_object {120 public:121 typedef raw_value this_type;122 RAW_BENCODE_SET_USING123 124 raw_value() {}125 raw_value(value_type* src_data, size_type src_size) : raw_object(src_data, src_size) {}126 127 // int64_t as_value() const;128 };129 130 117 class raw_string : protected raw_object { 131 118 public: … … 164 151 // 165 152 // 166 167 inline raw_value168 raw_bencode::as_raw_value() const {169 if (!is_raw_value())170 throw bencode_error("Wrong object type.");171 172 return raw_value(m_data + 1, m_size - 2);173 }174 153 175 154 inline raw_string … … 202 181 } 203 182 204 // inline int64_t205 // raw_value::as_value() const {206 // int64_t value = strtoll(207 // }208 209 210 183 // 211 184 // Redo...
