Module aya.pretty
Package org.aya.pretty.backend.string
Class StringPrinter<StringConfig extends StringPrinterConfig>
java.lang.Object
org.aya.pretty.backend.string.StringPrinter<StringConfig>
- All Implemented Interfaces:
Cursor.CursorAPI,Printer<String,StringConfig>
- Direct Known Subclasses:
DocHtmlPrinter,DocTeXPrinter
public class StringPrinter<StringConfig extends StringPrinterConfig>
extends Object
implements Printer<String,StringConfig>, Cursor.CursorAPI
The class for all string-output printers.
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected @NotNull DocfitsBetter(@NotNull Cursor cursor, @NotNull Doc a, @NotNull Doc b) @NotNull StringmakeIndent(int indent) protected intpredictWidth(@NotNull Cursor cursor, @NotNull Doc doc) @NotNull Stringrender(StringConfig config, @NotNull Doc doc) Render aDocobject with a config.protected voidprotected voidrenderFlatAlt(@NotNull Cursor cursor, Doc.FlatAlt alt) protected voidrenderFooter(@NotNull Cursor cursor) protected voidrenderHardLineBreak(@NotNull Cursor cursor) protected voidrenderHeader(@NotNull Cursor cursor) protected voidrenderHyperLinked(@NotNull Cursor cursor, Doc.HyperLinked text) protected voidrenderNest(@NotNull Cursor cursor, Doc.Nest nest) protected voidrenderPlainText(@NotNull Cursor cursor, @NotNull String content) protected voidrenderSpecialSymbol(@NotNull Cursor cursor, @NotNull String text) protected voidrenderStyled(@NotNull Cursor cursor, Doc.Styled styled) protected voidrenderUnionDoc(@NotNull Cursor cursor, Doc.Union union)
-
Field Details
-
config
-
-
Constructor Details
-
StringPrinter
public StringPrinter()
-
-
Method Details
-
makeIndent
- Specified by:
makeIndentin interfaceCursor.CursorAPI
-
render
Description copied from interface:PrinterRender aDocobject with a config.- Specified by:
renderin interfacePrinter<String,StringConfig extends StringPrinterConfig> - Parameters:
config- printer configdoc- doc object- Returns:
- rendered content
-
predictWidth
-
fitsBetter
-
renderHeader
-
renderDoc
-
renderSpecialSymbol
-
renderNest
-
renderUnionDoc
-
renderFlatAlt
-
renderHyperLinked
-
renderStyled
-
renderPlainText
-
renderHardLineBreak
-