| 156 | } |
| 157 | |
| 158 | string ToString() |
| 159 | { |
| 160 | string ToReturn; |
| 161 | if (!Protocol.empty()) |
| 162 | { |
| 163 | ToReturn += Protocol; |
| 164 | ToReturn += "://"; |
| 165 | } |
| 166 | if (!User.empty() || !Password.empty()) |
| 167 | { |
| 168 | ToReturn += User; |
| 169 | if (!Password.empty()) |
| 170 | { |
| 171 | ToReturn += ':'; |
| 172 | ToReturn += Password; |
| 173 | } |
| 174 | ToReturn += '@'; |
| 175 | } |
| 176 | ToReturn += Host; |
| 177 | if (!Port.empty()) |
| 178 | { |
| 179 | ToReturn += ':'; |
| 180 | ToReturn += Port; |
| 181 | } |
| 182 | if (!Path.empty() || !Query.empty() || !Fragment.empty()) |
| 183 | { |
| 184 | ToReturn += '/'; |
| 185 | ToReturn += Path; |
| 186 | if (!Query.empty()) |
| 187 | { |
| 188 | ToReturn += '?'; |
| 189 | ToReturn += Query; |
| 190 | } |
| 191 | if (!Fragment.empty()) |
| 192 | { |
| 193 | ToReturn += '#'; |
| 194 | ToReturn += Fragment; |
| 195 | } |
| 196 | } |
| 197 | return ToReturn; |
| 198 | } |
| 199 | |
| 200 | // Members |
| 201 | std::string Protocol; |
no test coverage detected