feat: docs

This commit is contained in:
sh0rez 2020-04-30 01:26:42 +02:00
parent 6e95ea768a
commit 21c8ebc75f
No known key found for this signature in database
GPG key ID: 87C71DF9F8181FF1
4 changed files with 256 additions and 1 deletions

124
doc-util/docs/d.md Normal file
View file

@ -0,0 +1,124 @@
# package d
```jsonnet
local d = import "github.com/sh0rez/docsonnet/doc-util"
```
`doc-util` provides a Jsonnet interface for `docsonnet`,
a Jsonnet API doc generator that uses structured data instead of comments.
## Index
* [`fn arg(name, type, default)`](#fn-arg)
* [`fn fn(help, args)`](#fn-fn)
* [`fn obj(help, fields)`](#fn-obj)
* [`fn pkg(name, url, help)`](#fn-pkg)
* [`obj argument`](#obj-argument)
* [`fn new(name, type, default)`](#fn-argumentnew)
* [`obj func`](#obj-func)
* [`fn new(help, args)`](#fn-funcnew)
* [`fn withHelp(help)`](#fn-funcwithhelp)
* [`obj object`](#obj-object)
* [`fn new(help, fields)`](#fn-objectnew)
* [`fn withFields(fields)`](#fn-objectwithfields)
* [`obj package`](#obj-package)
* [`fn new(name, url, help)`](#fn-packagenew)
## Fields
### fn arg
```ts
arg(name, type, default)
```
`arg` is a shorthand for `argument.new`
### fn fn
```ts
fn(help, args)
```
`fn` is a shorthand for `func.new`
### fn obj
```ts
obj(help, fields)
```
`obj` is a shorthand for `object.new`
### fn pkg
```ts
pkg(name, url, help)
```
`new` is a shorthand for `package.new`
## obj argument
Utilities for creating function arguments
### fn argument.new
```ts
new(name, type, default)
```
new creates a new function argument, taking the name, the type and optionally a default value
## obj func
Utilities for documenting Jsonnet methods (functions of objects)
### fn func.new
```ts
new(help, args)
```
new creates a new function, optionally with description and arguments
### fn func.withHelp
```ts
withHelp(help)
```
The `withHelp` modifier overrides the help text of that function
## obj object
Utilities for documenting Jsonnet objects (`{ }`).
### fn object.new
```ts
new(help, fields)
```
new creates a new object, optionally with description and fields
### fn object.withFields
```ts
withFields(fields)
```
The `withFields` modifier overrides the fields property of an already created object
## obj package
### fn package.new
```ts
new(name, url, help)
```
new creates a new package with given `name`, `import` URL and `help` text