mirror of
https://github.com/Luzifer/share.git
synced 2024-12-26 05:21:19 +00:00
117 lines
2.9 KiB
Text
117 lines
2.9 KiB
Text
|
{{$info := .}}{{$filtered := .IsFiltered}}{{/*
|
||
|
|
||
|
---------------------------------------
|
||
|
|
||
|
*/}}{{if $filtered}}{{range .PAst}}{{range .Decls}}{{node $info .}}
|
||
|
|
||
|
{{end}}{{end}}{{else}}{{with .PAst}}{{range $filename, $ast := .}}{{$filename}}:
|
||
|
{{node $ $ast}}{{end}}{{end}}{{end}}{{/*
|
||
|
|
||
|
---------------------------------------
|
||
|
|
||
|
*/}}{{if and $filtered (not (or .PDoc .PAst))}}No match found.
|
||
|
{{end}}{{with .PDoc}}{{if $.IsMain}}COMMAND DOCUMENTATION
|
||
|
|
||
|
{{comment_text .Doc " " "\t"}}
|
||
|
{{else}}{{if not $filtered}}PACKAGE DOCUMENTATION
|
||
|
|
||
|
package {{.Name}}
|
||
|
import "{{.ImportPath}}"
|
||
|
|
||
|
{{comment_text .Doc " " "\t"}}
|
||
|
{{example_text $ "" " "}}{{end}}{{/*
|
||
|
|
||
|
---------------------------------------
|
||
|
|
||
|
*/}}{{with .Consts}}{{if not $filtered}}CONSTANTS
|
||
|
|
||
|
{{end}}{{range .}}{{node $ .Decl}}
|
||
|
{{comment_text .Doc " " "\t"}}
|
||
|
{{end}}{{end}}{{/*
|
||
|
|
||
|
---------------------------------------
|
||
|
|
||
|
*/}}{{with .Vars}}{{if not $filtered}}VARIABLES
|
||
|
|
||
|
{{end}}{{range .}}{{node $ .Decl}}
|
||
|
{{comment_text .Doc " " "\t"}}
|
||
|
{{end}}{{end}}{{/*
|
||
|
|
||
|
---------------------------------------
|
||
|
|
||
|
*/}}{{with .Funcs}}{{if not $filtered}}FUNCTIONS
|
||
|
|
||
|
{{end}}{{range .}}{{node $ .Decl}}
|
||
|
{{comment_text .Doc " " "\t"}}
|
||
|
{{example_text $ .Name " "}}{{end}}{{end}}{{/*
|
||
|
|
||
|
---------------------------------------
|
||
|
|
||
|
*/}}{{with .Types}}{{if not $filtered}}TYPES
|
||
|
|
||
|
{{end}}{{range .}}{{$tname := .Name}}{{node $ .Decl}}
|
||
|
{{comment_text .Doc " " "\t"}}
|
||
|
{{/*
|
||
|
|
||
|
---------------------------------------
|
||
|
|
||
|
*/}}{{if .Consts}}{{range .Consts}}{{node $ .Decl}}
|
||
|
{{comment_text .Doc " " "\t"}}
|
||
|
{{end}}{{end}}{{/*
|
||
|
|
||
|
---------------------------------------
|
||
|
|
||
|
*/}}{{if .Vars}}{{range .Vars}}{{node $ .Decl}}
|
||
|
{{comment_text .Doc " " "\t"}}
|
||
|
{{range $name := .Names}}{{example_text $ $name " "}}{{end}}{{end}}{{end}}{{/*
|
||
|
|
||
|
---------------------------------------
|
||
|
|
||
|
*/}}{{if .Funcs}}{{range .Funcs}}{{node $ .Decl}}
|
||
|
{{comment_text .Doc " " "\t"}}
|
||
|
{{example_text $ .Name " "}}{{end}}{{end}}{{/*
|
||
|
|
||
|
---------------------------------------
|
||
|
|
||
|
*/}}{{if .Methods}}{{range .Methods}}{{node $ .Decl}}
|
||
|
{{comment_text .Doc " " "\t"}}
|
||
|
{{$name := printf "%s_%s" $tname .Name}}{{example_text $ $name " "}}{{end}}{{end}}{{/*
|
||
|
|
||
|
---------------------------------------
|
||
|
|
||
|
*/}}{{end}}{{end}}{{/*
|
||
|
|
||
|
---------------------------------------
|
||
|
|
||
|
*/}}{{if and $filtered (not (or .Consts (or .Vars (or .Funcs .Types))))}}No match found.
|
||
|
{{end}}{{/*
|
||
|
|
||
|
---------------------------------------
|
||
|
|
||
|
*/}}{{end}}{{/*
|
||
|
|
||
|
---------------------------------------
|
||
|
|
||
|
*/}}{{with $.Notes}}
|
||
|
{{range $marker, $content := .}}
|
||
|
{{$marker}}S
|
||
|
|
||
|
{{range $content}}{{comment_text .Body " " "\t"}}
|
||
|
{{end}}{{end}}{{end}}{{end}}{{/*
|
||
|
|
||
|
---------------------------------------
|
||
|
|
||
|
*/}}{{if not $filtered}}{{with .Dirs}}SUBDIRECTORIES
|
||
|
{{if $.DirFlat}}{{range .List}}{{if .HasPkg}}
|
||
|
{{.Path}}{{end}}{{end}}
|
||
|
{{else}}{{range .List}}
|
||
|
{{repeat `. ` .Depth}}{{.Name}}{{end}}
|
||
|
{{end}}{{end}}{{/*
|
||
|
|
||
|
---------------------------------------
|
||
|
|
||
|
*/}}{{end}}{{/*
|
||
|
Make sure there is no newline at the end of this file.
|
||
|
perl -i -pe 'chomp if eof' package.txt
|
||
|
*/}}
|