Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

LDT/Developer Area/User Assistance

< LDT
Revision as of 15:13, 9 February 2012 by Code.simonbernard.eu (Talk | contribs) (New page: = 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 def...)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

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.

Back to the top