void SerializeMatch(Writer &writer, const Match &match) { writer.StartObject(); writer.Key("startEA"); writer.Uint(match.getStartEA().getValue()); writer.Key("endEA"); writer.Uint(match.getEndEA().getValue()); writer.Key("patternName"); writer.String(match.getPatternName()); writer.EndObject(); }
void Serialize(Writer& writer) const { // This base class just write out name-value pairs, without wrapping within an object. writer.String("name"); writer.String(name_.c_str(), (SizeType)name_.length()); // Suppling length of string is faster. writer.String("age"); writer.Uint(age_); }
void serialize(Writer& writer) override { writer.StartObject(); auto samples = ::StackSampler::results(sample_size_); auto total = ::StackSampler::samples_total(); auto asleep = ::StackSampler::samples_asleep(); writer.Key("active"); double active = total / (double)(total+asleep) * 100.0; writer.Double(active); writer.Key("asleep"); double asleep_perc = asleep / (double)(total+asleep) * 100.0; writer.Double(asleep_perc); writer.Key("samples"); writer.StartArray(); for (auto& sa : samples) { writer.StartObject(); writer.Key("address"); writer.Uint((uintptr_t)sa.addr); writer.Key("name"); writer.String(sa.name); writer.Key("total"); writer.Uint(sa.samp); // percentage of total samples float perc = sa.samp / (float)total * 100.0f; writer.Key("percent"); writer.Double(perc); writer.EndObject(); } writer.EndArray(); writer.EndObject(); }
void Serialize(Writer& writer) const { // This base class just write out name-value pairs, without wrapping within an object. writer.String("name"); #ifdef RAPIDJSON_HAS_STDSTRING writer.String(name_); #else writer.String(name_.c_str(), (SizeType)name_.length()); // Supplying length of string is faster. #endif writer.String("age"); writer.Uint(age_); }
void operator()(Writer& w, unsigned i) const { w.Uint(i); }