本文整理汇总了C++中SpliceableJSONWriter::NullElements方法的典型用法代码示例。如果您正苦于以下问题:C++ SpliceableJSONWriter::NullElements方法的具体用法?C++ SpliceableJSONWriter::NullElements怎么用?C++ SpliceableJSONWriter::NullElements使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类SpliceableJSONWriter
的用法示例。
在下文中一共展示了SpliceableJSONWriter::NullElements方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: WriteSample
static void WriteSample(SpliceableJSONWriter& aWriter, ProfileSample& aSample)
{
// Schema:
// [stack, time, responsiveness, rss, uss, frameNumber, power]
aWriter.StartArrayElement();
{
// The last non-null index is tracked to save space in the JSON by avoid
// emitting 'null's at the end of the array, as they're only needed if
// followed by non-null elements.
uint32_t index = 0;
uint32_t lastNonNullIndex = 0;
aWriter.IntElement(aSample.mStack);
index++;
if (aSample.mTime.isSome()) {
lastNonNullIndex = index;
aWriter.DoubleElement(*aSample.mTime);
}
index++;
if (aSample.mResponsiveness.isSome()) {
aWriter.NullElements(index - lastNonNullIndex - 1);
lastNonNullIndex = index;
aWriter.DoubleElement(*aSample.mResponsiveness);
}
index++;
if (aSample.mRSS.isSome()) {
aWriter.NullElements(index - lastNonNullIndex - 1);
lastNonNullIndex = index;
aWriter.DoubleElement(*aSample.mRSS);
}
index++;
if (aSample.mUSS.isSome()) {
aWriter.NullElements(index - lastNonNullIndex - 1);
lastNonNullIndex = index;
aWriter.DoubleElement(*aSample.mUSS);
}
index++;
if (aSample.mFrameNumber.isSome()) {
aWriter.NullElements(index - lastNonNullIndex - 1);
lastNonNullIndex = index;
aWriter.IntElement(*aSample.mFrameNumber);
}
index++;
if (aSample.mPower.isSome()) {
aWriter.NullElements(index - lastNonNullIndex - 1);
lastNonNullIndex = index;
aWriter.DoubleElement(*aSample.mPower);
}
index++;
}
aWriter.EndArray();
}