Files
avorion-docgen/class.tmpl
2024-09-12 00:24:47 +02:00

24 lines
742 B
Cheetah

---@diagnostic disable: missing-return
{{range .Fields}}
---@field {{.Name}} {{.Type}} {{.Comment}}
{{end}}
{{.ClassName}} = {
{{$n := len .Methods}}
{{$methods := len .Methods}}
{{range $index, $method := .Methods}}
---@param self {{$.ClassName}}
{{range $param := $method.Params}}
---@param {{.Name}} {{.Type}} {{.Comment}}
{{end}}
{{range $ret := $method.Returns}}
---@return {{.Type}} {{if ne .Comment ""}}#{{.Comment}}{{end}}
{{end}}
{{.Name}} = function(self{{if gt (len .Params) 0}}, {{range $index, $param := .Params}}{{if $index}}, {{end}}{{$param.Name}}{{end}}{{end}}) end,
{{if eq (plus1 $index) $n}}
{{end}}
{{end}}
}
---@type ({{$.ClassName}} | fun(): {{$.ClassName}})
{{$.ClassName}} = nil