Directives are written using the @
syntax.
External documentation
Perhaps the most common directives are those associated with external documentation.
External documentation is appended to the functions at compile time when exporting to a library file. This means after the code is compiled, using the -h doc command on the compiled file and requesting the documentation by name will return the text that was allocated to that documentation:
@doc "MyFunction : This function returns true" @author "Jamie Balfour" @date "July 2020" function MyFunction () return true end function
The description must be quoted after the @doc
directive. This is available only as of version 1.4.1. Previous
versions use a different system.
This kind of documentation can be very useful if you are distributing your compiled code or planning to add it as a library.
Accessing it again is done with the -h ZAC applied on a compiled script.
zpe -h doc -f file.zex -s $function_name
Prior to version 1.4.1
In older versions of ZPE, internal documentation can be exported using @ commands within multiline comments.
/*@doc My function:This function returns true*/
The colon in the middle splits the documentation into two halves, one for the name (on the left) and one for the description (on the right).
When using the @ commands, the comment must use the multiline comment symbols /* and */.
The standard library (stdLib) contains examples of these directives.
Other directives
There are plenty of other directives coming to ZPE, but as of version 1.11.9 there is only the one.
prevent_auto_include
The prevent_auto_include
directive is used to prevent a compiled program
having to include a file at the start which can potentially overwrite code within it.
@directive prevent_auto_include : true