| 211 | } |
| 212 | |
| 213 | void StatusVector::ImplStatusVector::prepend(const StatusVector& v) throw() |
| 214 | { |
| 215 | auto errFrom = v.implementation->value(); |
| 216 | auto lenFrom = v.implementation->firstWarning() ? v.implementation->firstWarning() : v.implementation->length(); |
| 217 | auto errTo = value(); |
| 218 | auto lenTo = firstWarning() ? firstWarning() : length(); |
| 219 | |
| 220 | if (lenFrom < lenTo && fb_utils::cmpStatus(lenFrom, errFrom, errTo)) |
| 221 | return; // already here - ToDo: check warnings |
| 222 | |
| 223 | ImplStatusVector newVector(getKind(), getCode()); |
| 224 | |
| 225 | if (newVector.appendErrors(v.implementation)) |
| 226 | { |
| 227 | if (newVector.appendErrors(this)) |
| 228 | { |
| 229 | if (newVector.appendWarnings(v.implementation)) |
| 230 | newVector.appendWarnings(this); |
| 231 | } |
| 232 | } |
| 233 | |
| 234 | *this = newVector; |
| 235 | } |
| 236 | |
| 237 | StatusVector::ImplStatusVector& StatusVector::ImplStatusVector::operator=(const StatusVector::ImplStatusVector& src) |
| 238 | { |
no test coverage detected