Merge pull request #56 from ferventcoder/ticket/master/PDOC-35-documentation-fixes
(PDOC-35) Clarify types and providers example
This commit is contained in:
commit
b00a6cc587
27
README.md
27
README.md
|
@ -53,7 +53,7 @@ Installing Strings Itself
|
|||
|
||||
Strings can be installed from the [Puppet Forge][forge strings] or from source.
|
||||
|
||||
[forge strings]: https://forge.puppetlabs.com/puppetlabs/strings
|
||||
[forge strings]: https://forge.puppetlabs.com/puppetlabs/strings
|
||||
|
||||
**Installing from the Forge**
|
||||
|
||||
|
@ -119,6 +119,7 @@ future, here are some very basic examples to get you started using the strings
|
|||
module. These are very much subject to change as we continue to work out a
|
||||
style guide.
|
||||
|
||||
### Functions
|
||||
Here's an example of how you might document a 4x function:
|
||||
|
||||
```
|
||||
|
@ -140,7 +141,9 @@ Here's an example of how you might document a 4x function:
|
|||
end
|
||||
```
|
||||
|
||||
And here's an example of how you might document a class:
|
||||
### Classes / Defined Types
|
||||
|
||||
Here's an example of how you might document a class:
|
||||
|
||||
```
|
||||
# This class is meant to serve as an example of how one might
|
||||
|
@ -158,19 +161,21 @@ And here's an example of how you might document a class:
|
|||
) { }
|
||||
```
|
||||
|
||||
Puppet providers often rely on different types of metaprogramming to create
|
||||
parameters and methods. Since Strings does not execute the code which is being
|
||||
documented you must provide hints on how to document your code. To document a
|
||||
parameter which is automatically created you must use the special directive
|
||||
`@!puppet.provider.param` Which may take types, the parameter name, and a
|
||||
description.
|
||||
|
||||
### Types and Providers
|
||||
Strings will automatically extract the `@doc` provider docstring and any `desc`
|
||||
parameter docstrings.
|
||||
parameter/property docstrings.
|
||||
|
||||
Sometimes however, Puppet providers use metaprogramming to create parameters
|
||||
and methods automatically. In those cases Strings will not be able to document
|
||||
them automatically (Strings doesn't execute the code that would generate those
|
||||
parameters), so you will need to provide hints on how to document your code. To
|
||||
document a parameter which is automatically created you must use the special
|
||||
directive `@!puppet.provider.param` which may take types, the parameter name,
|
||||
and a description.
|
||||
|
||||
```ruby
|
||||
# @!puppet.provider.param my_parameter This parameter needs to be explicitly
|
||||
# documented
|
||||
# documented as it is generated by mk_resource_methods
|
||||
Puppet::Type.newtype(:minifile) do
|
||||
|
||||
@doc = "Manages files, including their content, ownership, and permissions.
|
||||
|
|
Loading…
Reference in New Issue