in tools/tensorflow_docs/api_generator/gen_java/templates/macros.cs [10:97]
will not include the generics in the class name (good for sidenav lists)
Expects the following fields:
.name
.link
.isPrimitive
.superBounds.N.(more links) (... super ... & ...)
.extendsBounds.N.(more links) (... extends ... & ...)
.typeArguments.N.(more links) (< ... >)
?><?cs
def:type_link_impl(type, link) ?><?cs call:type_link_impl2(type, link, "false") ?><?cs /def ?><?cs
def:type_link_impl2(type, link, nav) ?><?cs
if:type.link && link=="true" ?><?cs
if:type.federated ?><a href="<?cs var:type.link ?>"><?cs
var:type.label ?></a><?cs
else ?><a href="<?cs var:toroot ?><?cs var:type.link ?>"><?cs var:type.label ?></a><?cs
/if ?><?cs
else ?><?cs var:type.label ?><?cs
/if ?><?cs
if:subcount(type.extendsBounds) ?><?cs
each:t=type.extendsBounds ?><?cs
if:first(t) ?> extends <?cs else ?> & <?cs /if ?><?cs
call:type_link_impl(t, "true") ?><?cs
/each ?><?cs
/if ?><?cs
if:subcount(type.superBounds) ?><?cs
each:t=type.superBounds ?><?cs
if:first(t) ?> super <?cs else ?> & <?cs /if ?><?cs
call:type_link_impl(t, "true") ?><?cs
/each ?><?cs
/if ?><?cs
if:subcount(type.typeArguments) && nav=="false"
?><<?cs each:t=type.typeArguments ?><?cs call:type_link_impl(t, "true") ?><?cs
if:!last(t) ?>, <?cs /if ?><?cs
/each ?>><?cs
/if ?><?cs
/def ?>
<?cs def:class_name(type) ?><?cs call:type_link_impl(type, "false") ?><?cs /def ?>
<?cs def:type_link2(type,nav) ?><?cs call:type_link_impl2(type, "true", nav) ?><?cs /def ?>
<?cs def:type_link(type) ?><?cs call:type_link2(type, "false") ?><?cs /def ?>
<?cs # a conditional link.
if the "condition" parameter evals to true then the link is displayed
otherwise only the text is displayed
?><?cs
def:cond_link(text, root, path, condition) ?><?cs
if:condition ?><a href="<?cs var:root ?><?cs var:path ?>"><?cs /if ?><?cs var:text ?><?cs if:condition ?></a><?cs /if ?><?cs
/def ?>
<?cs # A comma separated parameter list ?><?cs
def:parameter_list(params) ?><?cs
each:param = params ?><?cs
call:type_link(param.type)?> <?cs
var:param.name ?><?cs
if: name(param)!=subcount(params)-1?>, <?cs /if ?><?cs
/each ?><?cs
/def ?>
<?cs # Print a list of tags (e.g. description text ?><?cs
def:tag_list(tags) ?><?cs
each:tag = tags ?><?cs
if:tag.name == "Text" ?><?cs var:tag.text?><?cs
elif:tag.kind == "@more" ?><p><?cs
elif:tag.kind == "@see" ?><code><a href="<?cs if:string.find(tag.href, federatedUrl) == -1 ?><?cs var:toroot ?><?cs /if ?><?cs var:tag.href ?>"><?cs var:html_escape(tag.label) ?></a></code><?cs
elif:tag.kind == "@seeHref" ?><a href="<?cs var:tag.href ?>"><?cs var:tag.label ?></a><?cs
elif:tag.kind == "@seeJustLabel" ?><?cs var:tag.label ?><?cs
elif:tag.kind == "@value" ?><code><a href="<?cs if:string.find(tag.href, federatedUrl) == -1 ?><?cs var:toroot ?><?cs /if ?>"><?cs var:html_escape(tag.text) ?></a></code><?cs
elif:tag.kind == "@code" ?><code><?cs var:html_escape(tag.text) ?></code><?cs
elif:tag.kind == "@samplecode" ?><pre><?cs var:tag.text ?></pre><?cs
elif:tag.name == "@sample" ?><pre><?cs var:tag.text ?></pre><?cs
elif:tag.name == "@include" ?><?cs var:tag.text ?><?cs
elif:tag.kind == "@docRoot" ?><?cs var:toroot ?><?cs
elif:tag.kind == "@sdkCurrent" ?><?cs var:sdk.current ?><?cs
elif:tag.kind == "@sdkCurrentVersion" ?><?cs var:sdk.version ?><?cs
elif:tag.kind == "@sdkCurrentRelId" ?><?cs var:sdk.rel.id ?><?cs
elif:tag.kind == "@sdkPlatformVersion" ?><?cs var:sdk.platform.version ?><?cs
elif:tag.kind == "@sdkPlatformApiLevel" ?><?cs var:sdk.platform.apiLevel ?><?cs
elif:tag.kind == "@sdkPlatformMajorMinor" ?><?cs var:sdk.platform.majorMinor ?><?cs
elif:tag.kind == "@sdkPlatformReleaseDate" ?><?cs var:sdk.platform.releaseDate ?><?cs
elif:tag.kind == "@sdkPlatformDeployableDate" ?><?cs var:sdk.platform.deployableDate ?><?cs
elif:tag.kind == "@adtZipVersion" ?><?cs var:adt.zip.version ?><?cs
elif:tag.kind == "@adtZipDownload" ?><?cs var:adt.zip.download ?><?cs
elif:tag.kind == "@adtZipBytes" ?><?cs var:adt.zip.bytes ?><?cs
elif:tag.kind == "@adtZipChecksum" ?><?cs var:adt.zip.checksum ?><?cs
elif:tag.kind == "@inheritDoc" ?><?cs # This is the case when @inheritDoc is in something
that doesn't inherit from anything?><?cs
elif:tag.kind == "@attr" ?><?cs
else ?>{<?cs var:tag.name?> <?cs var:tag.text ?>}<?cs