3

Je voudrais faire un peu d'analyse de code de Javascript. Je préférerais opérer sur AST s ou S-Expression s. Il est certainement possible que le moteur V8 le construise, bien que je n'arrive pas à trouver de documentation sur la façon d'accéder à cette information à partir d'un contexte Javascript. Je serais parfaitement heureux de faire mon analyse dans Ruby, bien que la seule façon dont je pourrais penser à le faire serait d'écrire une grammaire complète en Treetop ou un générateur d'analyseur similaire.Quels outils existent pour analyser JavaScript et lire les résultats en Javascript ou Ruby?

Répondre

4

Si vous voulez utiliser Ruby vous n'avez pas à implémenter vous-même parce que Aaron Patterson de la renommée nokogiri déjà fait dans rkelly.

+0

J'accepterais volontiers cette réponse, car elle correspond exactement à la facture de UglifyJS. Malheureusement, je ne peux pas accepter deux. Pourtant, je vais lui donner une surenchère. –

2

Notre DMS Software Reengineering Toolkit est capable d'analyser ECMAScript (même intégré dans des balises de script HTML ou des attributs ONxxx), et de construire des AST. Vous pouvez définir vos propres procédures d'analyse, utiliser des modèles au niveau de la source pour reconnaître le code ou transformer le code; ceux-ci manipulent les ASTs. Après la transformation, vous pouvez régénérer le texte source valide, y compris les commentaires. Vous pouvez exporter les AST dans une autre langue que XML si vous le souhaitez, mais DMS contient tellement de mécanismes utiles pour soutenir l'analyse et la transformation des programmes que je crois que la tentation disparaîtra lorsque vous y regarderez de plus près. DMS fonctionne également pour une grande variété d'autres langues.

Questions connexes