Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
LDT/Developer Area/User Assistance
User Assistance
We need a way to help users to discover Lua module API. The key features to achieve this goal are :
- module autocompletion
- module documentation
API Model
We define a model which express the API of a Lua module. (see model definition)
This model is used to help autocompletion but it is also used to generate html documentation.
The real question is how to build this model? Information can be extract from :
- static code analysis
- documentation language
The problem with static code analysis is there are a lot of way to implement a module. We thought that is not realistic to try to support all them. It's also difficult to do that for modules written in C.
For a first version, extract information from a documentation language (like luadoc, ldoc) is surely the better choice. This way all module (libraries) providers could offer good user assistance with a little effort of documentation. (we also manage the "C module problem")
In a next release, we could use heuristic to extract api from popular pattern (popular way to implement a module).
Language Documentation
Idealy, this language should be a super-set of luadoc. But as we say before, in our first version all information is extracted only from documentation language. So it will not be available (at begin)
Typage is the main new concept, this will enable efficient autocompletion.
See definition of first version of this language. This is a little bit verbose but static code analysis will help later.
LuaDocumentor
A command line tools is necessary to allow user to generate html (or other format) documentation.
Prototype
We will deliver a prototype soon.