The goal is to enable the docuwiki to contain proper documentation for all API generated from .eo with specific insight on C#. This will be a first binding to integrate information in the reference API documentation.
|Open||None||T5826 Improve overall EFL documentation|
|Open||None||T6127 Provide documentation for C#|
|Open||segfaultxavi||T6128 Generate C# reference API documentation|
|Resolved||segfaultxavi||T7424 Add support for DocFx to generate the C# API docs|
|Resolved||zmike||T7527 Support DocFX from meson|
|Resolved||lauromoura||T7451 efl-mono: Only expose API methods relevant to the user|
|Resolved||segfaultxavi||T7453 C# bindings: Convert Eo comment format into proper XML comment format|
|Resolved||segfaultxavi||T7482 eo docs: Remove Doxygen tags from efl*.eo files|
|Open||lauromoura||T7505 efl-mono: Add <value> tags to Properties documentation|
|Open||felipealmeida||T7519 C#: Hide DllImport'd methods into a NativeMethods subclass|
As talked over previously, I will claim this task and integrate C# into the current documentation generator. Before that, I intend to rewrite the documentation generator using a simpler design, so that it will become easier to integrate C# and other languages into it.
The Mono compiler already extracts the documentation from the generated code (eolian_mono adds them as C# comments) into a XML file that VS/MonoDevelop use. Maybe we could just add a script to transform the generated XML into the DokuWiki syntax.
This has the advantage of automatically generating docs for the manual binding code too.
I took a break from that to work on meson, eolian_aux (which will be used to move some of the core from the docgen) and some other things, but the code is all in my personal dev repo... I will try to get a proper repository set up early next week or maybe even during this weekend. If somebody wants to help with working on the doc generator or even provide feedback on the generated output, go ahead, it would be much appreciated.
I guess things like the constructors with multiple parameters (enabled by the new @ctor_param tag) are going to be difficult to generate directly from EO. Do you have any suggestion?
DocFX seems to be working now (in a branch), but it is a heavy dependency and it takes ages to generate the docs.
In the long run, I think it would be nicer to have our own generator, but, for now, let's just lower the priority of it and use DocFX once it is finished.
Well, since it covers all the C# docs, I'll just go ahead and remove it from our own generator for the time being. The current C# code is pretty much copy-paste-parts-of-the-generator-into-separate-file-and-modify and it's kind of a pain to do changes in it as i make them in the rest of the generator, so if we want C# support later in it, might as well just write it from scratch.