| 3225 | } |
| 3226 | |
| 3227 | void FastWriter::writeValue(const Value& value) { |
| 3228 | switch (value.type()) { |
| 3229 | case nullValue: |
| 3230 | if (!dropNullPlaceholders_) |
| 3231 | document_ += "null"; |
| 3232 | break; |
| 3233 | case intValue: |
| 3234 | document_ += valueToString(value.asLargestInt()); |
| 3235 | break; |
| 3236 | case uintValue: |
| 3237 | document_ += valueToString(value.asLargestUInt()); |
| 3238 | break; |
| 3239 | case realValue: |
| 3240 | document_ += valueToString(value.asDouble()); |
| 3241 | break; |
| 3242 | case stringValue: |
| 3243 | document_ += valueToQuotedString(value.asCString()); |
| 3244 | break; |
| 3245 | case booleanValue: |
| 3246 | document_ += valueToString(value.asBool()); |
| 3247 | break; |
| 3248 | case arrayValue: { |
| 3249 | document_ += '['; |
| 3250 | int size = value.size(); |
| 3251 | for (int index = 0; index < size; ++index) { |
| 3252 | if (index > 0) |
| 3253 | document_ += ','; |
| 3254 | writeValue(value[index]); |
| 3255 | } |
| 3256 | document_ += ']'; |
| 3257 | } break; |
| 3258 | case objectValue: { |
| 3259 | Value::Members members(value.getMemberNames()); |
| 3260 | document_ += '{'; |
| 3261 | for (Value::Members::iterator it = members.begin(); it != members.end(); |
| 3262 | ++it) { |
| 3263 | const std::string& name = *it; |
| 3264 | if (it != members.begin()) |
| 3265 | document_ += ','; |
| 3266 | document_ += valueToQuotedString(name.c_str()); |
| 3267 | document_ += yamlCompatiblityEnabled_ ? ": " : ":"; |
| 3268 | writeValue(value[name]); |
| 3269 | } |
| 3270 | document_ += '}'; |
| 3271 | } break; |
| 3272 | } |
| 3273 | } |
| 3274 | |
| 3275 | // Class StyledWriter |
| 3276 | // ////////////////////////////////////////////////////////////////// |
nothing calls this directly
no test coverage detected