BLDocs online : ca avance ...
Par -Alexandre LEGOUT aka LAlex- le vendredi, janvier 16 2004, 12:31 - Projets - Lien permanent
Le parseur de documentation ActionScript 2 que je mène actuellement avec Kalysto, et en collaboration avec Samuel R. Neff, avance. Pas trop vite mais il avance !
Pour rappel, il s'agit d'un moyen de générer une documentation (au format HTML ou autre) en analysant les commentaires et signatures d'une ou plusieurs classes AS2. ![]()
Le processus fonctionnel se déroule en deux étapes : d'abord on parcoure la totalité du code pour en extraire les déclarations de classes, de propriétés et de méthodes, ainsi que les commentaires qui sont a priori des commentaires BLDocs (en gros, ceux qui commencent par /**) ... Ensuite, on peut parser ces parties du code pour générer un fichier XML contenant les informations récupérées, qu'on aura plus qu'à mettre en page grâce à une feuille de style XSLT ... ![]()
On peut considérer qu'un commentaire est associé à une classe/propriété/méthode à partir du moment où il n'y a que des espaces et/ou des retours à la ligne entre la fin du commentaire et la déclaration elle-même. Cette première partie est a priori achevée, excepté un debugage éventuel. Donc, si certains d'entre vous ont des classes commentées "à la JavaDoc", ce serait super sympa de vous rendre sur ce parseur pour voir s'il n'oublie rien, ou ne fait pas quelques bêtises !!! ![]()
Ce parseur a été entièrement recodé par rapport au précédent. En effet, je me suis rendu compte que gérer les imbrications de commentaires, de chaines de caractères et de blocs d'instructions était quasi-impossible avec les expressions régulières uniquement. J'ai donc adopté un système de fonctionnoment séquentiel, toujours au moyen des expressions régulières, qui progresse dans le code, et sait en permanence s'il est dans un commentaire ou dans une chaîne de caractères, et à quel niveau il se trouve (racine, dans la classe, dans un méthode, etc ...) ... ![]()
L'étape suivante, une fois les commentaires associés aux bonnes déclarations, consiste à parser tout ca, pour en extraire les "tags" du type @param, @return, etc... pour ensuite générer un fichier XML contenant les informations dont on a besoin. Il sera a priori possible de parser un ensemble de classes (plusieurs fichier .as) en les uplodant dasn un fichier .zip contenant l'arborescence des répertoires et des fichiers ! ![]()
Commentaires
Très prometteur, bon courage dans cette fabuleuse aventure !
beau boulot ^^ bon courage pour la suite
ya un endroit où est marqué les trucs compris par le parseur ? tous les trucs qu'on peut faire
neo >> Pour l'instant, rien n'est compris par le parseur !!!
C'est juste l'extraction des docs et de la méthode/propriété/classe qui correspond ... 
Dommage que tout ce que je vois c temps-ci soit pour l’AS2.
Enfin je te souhaite bon courage pour la suite de ton aventure.
A+
il existe deja un projet open source du genre
ca commence a peine...
http://as2documentor.sourceforge.net/
Fil des commentaires de ce billet