Skip to content

Package io.github.sandydunlop.markista.doclet

Class MarkdownWriter

java.lang.Object
        io.github.sandydunlop.markista.doclet.MarkdownWriter


Field Summary

Modifier and Type Field Description
private Writer writer
private String outputDirectory
private Node linkFrom
private static final String NBSP
private static final String BR

Constructor Summary

Constructor Description
MarkdownWriter(String outputDirectory) Constructor that sets up the locations API documents will be written to.

Method Summary

Modifier and Type Method Description
void writeDocs(Api api) Ouput the documentation files for the specified API
private char pathSeparator()
private void outputTypeDoc(TypeNode typeDoc, String subType)
private void outputSupertypes(TypeNode typeDoc)
private void outputPackageMembers(String title, List members)
private void outputPackageDoc(PackageNode packageDoc)
private void outputNestedClassSummary(List nestedClasses)
private void outputMethodSummary(List methods)
private void outputMethodDetails(List methods)
private void outputImplementedInterfaces(TypeNode typeDoc)
private void outputFieldSummary(List fields)
private void outputEnclosingClass(TypeNode typeDoc)
private void outputConstructorSummary(List methods)
private String mdDocumentLink(String docName)
private String mdDocumentLink(String phrase, String docName)
private String mdAutoLink(String identifier)
private String mdAutoLink(String identifier, boolean simplify) Create a markdown link, automatically deciding where it needs to link to
private String mdAnchorLink(String phrase)
private static String mdAnchor(String phrase)
private boolean isNullOrEmpty(String s)
private static String inOneLine(String text)
private String formatTaggedText(List parsedSegments)
private String formatTaggedLinkPlain(DocTree link)
private String formatTaggedLink(DocTree link)
private String escape(String str)
private Writer createFile(String className, String packageName)
private File buildContainingDirPath(String outputDirectory, String packageName)

Method Details

writeDocs

void writeDocs(Api api)

Ouput the documentation files for the specified API

Parameters:

api - Ouput the documentation files for the specified API

pathSeparator

private char pathSeparator()

outputTypeDoc

private void outputTypeDoc(TypeNode typeDoc, String subType)

outputSupertypes

private void outputSupertypes(TypeNode typeDoc)

outputPackageMembers

private void outputPackageMembers(String title, List members)

outputPackageDoc

private void outputPackageDoc(PackageNode packageDoc)

outputNestedClassSummary

private void outputNestedClassSummary(List nestedClasses)

outputMethodSummary

private void outputMethodSummary(List methods)

outputMethodDetails

private void outputMethodDetails(List methods)

outputImplementedInterfaces

private void outputImplementedInterfaces(TypeNode typeDoc)

outputFieldSummary

private void outputFieldSummary(List fields)

outputEnclosingClass

private void outputEnclosingClass(TypeNode typeDoc)

outputConstructorSummary

private void outputConstructorSummary(List methods)

private String mdDocumentLink(String docName)

private String mdDocumentLink(String phrase, String docName)

private String mdAutoLink(String identifier)

private String mdAutoLink(String identifier, boolean simplify)

Create a markdown link, automatically deciding where it needs to link to

Parameters:

identifier - Create a markdown link, automatically deciding where it needs to link to

simplify - Create a markdown link, automatically deciding where it needs to link to

Returns:

[markdown text for a link to a document for the specified identifier or an anchor link]

private String mdAnchorLink(String phrase)

mdAnchor

private static String mdAnchor(String phrase)

isNullOrEmpty

private boolean isNullOrEmpty(String s)

inOneLine

private static String inOneLine(String text)

formatTaggedText

private String formatTaggedText(List parsedSegments)

formatTaggedLinkPlain

private String formatTaggedLinkPlain(DocTree link)

private String formatTaggedLink(DocTree link)

escape

private String escape(String str)

createFile

private Writer createFile(String className, String packageName)

buildContainingDirPath

private File buildContainingDirPath(String outputDirectory, String packageName)