[#llvm-JSONScopedPrinter] = xref:llvm.adoc[llvm]::JSONScopedPrinter :relfileprefix: ../ :mrdocs: Scoped printer that emits JSON objects and arrays. == Synopsis Declared in `<llvm/Support/ScopedPrinter.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- class JSONScopedPrinter : public xref:llvm/ScopedPrinter.adoc[ScopedPrinter] ---- == Base Classes [cols="1,4"] |=== | Name| Description | `xref:llvm/ScopedPrinter.adoc[ScopedPrinter]` | Pretty‐printer that emits indented, labeled text with nested scopes. |=== == Enums [cols="1,4"] |=== | Name| Description | xref:llvm/ScopedPrinter/ScopedPrinterKind.adoc[`ScopedPrinterKind`] | Discriminator for `ScopedPrinter` subclasses used with LLVM RTTI. |=== == Member Functions [cols="1,4"] |=== | Name| Description | xref:llvm/JSONScopedPrinter/2constructor.adoc[`JSONScopedPrinter`] [.small]#[constructor]# | Construct a JSON scoped printer writing to `OS.` | xref:llvm/JSONScopedPrinter/arrayBegin-01.adoc[`arrayBegin`] | `arrayBegin` overloads | xref:llvm/JSONScopedPrinter/arrayEnd.adoc[`arrayEnd`] [.small]#[virtual]# | End the current JSON array. | xref:llvm/ScopedPrinter/flush.adoc[`flush`] | Flush the underlying output stream. | xref:llvm/ScopedPrinter/getIndentLevel.adoc[`getIndentLevel`] | Return the current indentation level. | xref:llvm/ScopedPrinter/getKind.adoc[`getKind`] | Return the RTTI kind of this printer. | xref:llvm/ScopedPrinter/getOStream.adoc[`getOStream`] [.small]#[virtual]# | Return the underlying output stream. | xref:llvm/ScopedPrinter/hex.adoc[`hex`] | Wrap `Value` as a `HexNumber` for hexadecimal printing. | xref:llvm/ScopedPrinter/indent.adoc[`indent`] | Increase the indentation level by `Levels.` | xref:llvm/JSONScopedPrinter/objectBegin-09.adoc[`objectBegin`] | `objectBegin` overloads | xref:llvm/JSONScopedPrinter/objectEnd.adoc[`objectEnd`] [.small]#[virtual]# | End the current JSON object. | xref:llvm/ScopedPrinter/printBinary-0e.adoc[`printBinary`] | `printBinary` overloads | xref:llvm/ScopedPrinter/printBinaryBlock-0f.adoc[`printBinaryBlock`] | `printBinaryBlock` overloads | xref:llvm/JSONScopedPrinter/printBoolean.adoc[`printBoolean`] [.small]#[virtual]# | Print a labeled boolean as a JSON attribute. | xref:llvm/ScopedPrinter/printEnum.adoc[`printEnum`] | Print an enumeration value by name when known, otherwise as hex. | xref:llvm/ScopedPrinter/printFlags-04.adoc[`printFlags`] | `printFlags` overloads | xref:llvm/ScopedPrinter/printHex-01.adoc[`printHex`] | `printHex` overloads | xref:llvm/ScopedPrinter/printHexList.adoc[`printHexList`] | Print a labeled list of values in hexadecimal. | xref:llvm/ScopedPrinter/printIndent.adoc[`printIndent`] | Print the current prefix and indentation whitespace. | xref:llvm/JSONScopedPrinter/printList-0d4.adoc[`printList`] | `printList` overloads | xref:llvm/JSONScopedPrinter/printNumber-086c.adoc[`printNumber`] | `printNumber` overloads | xref:llvm/ScopedPrinter/printObject.adoc[`printObject`] | Print a labeled object by converting it to a string. | xref:llvm/JSONScopedPrinter/printString-09.adoc[`printString`] | `printString` overloads | xref:llvm/ScopedPrinter/printStringEscaped.adoc[`printStringEscaped`] | Print a labeled string with C‐style escapes. | xref:llvm/ScopedPrinter/printSymbolOffset.adoc[`printSymbolOffset`] | Print a labeled symbol name plus hexadecimal offset. | xref:llvm/ScopedPrinter/printVersion.adoc[`printVersion`] | Print a labeled dotted version number. | xref:llvm/ScopedPrinter/resetIndent.adoc[`resetIndent`] | Reset the indentation level to zero. | xref:llvm/ScopedPrinter/setPrefix.adoc[`setPrefix`] | Set the prefix printed before each indented line. | xref:llvm/ScopedPrinter/startLine.adoc[`startLine`] [.small]#[virtual]# | Start a new indented line and return the output stream. | xref:llvm/ScopedPrinter/unindent.adoc[`unindent`] | Decrease the indentation level by `Levels.` |=== == Static Member Functions [cols="1,4"] |=== | Name| Description | xref:llvm/JSONScopedPrinter/classof.adoc[`classof`] | Return true if `SP` is a `JSONScopedPrinter.` |=== == Non-Member Functions [cols="1,4"] |=== | Name| Description | xref:llvm/codeview/printTypeIndex.adoc[`codeview::printTypeIndex`] | Print TypeIndex `TI` named `FieldName` to `Printer` using `Types.` |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#