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)
mdDocumentLink
private String mdDocumentLink(String docName)
mdDocumentLink
private String mdDocumentLink(String phrase, String docName)
mdAutoLink
private String mdAutoLink(String identifier)
mdAutoLink
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]
mdAnchorLink
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)
formatTaggedLink
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)