Forum Programmation.perl Analyse de code C++

Posté par .
Tags : aucun
0
6
juin
2005

Hello !

Non, ne vous inquiétez pas, je ne pense pas m'être trompé de forum…

Je cherche en fait un "bout de code" qui pourrait me permettre d'analyser et de remplacer des parties de sources qui sont en C++. Je penses que Perl est le mieux adapté, alors je poste donc ici.

L'idéal serait pour moi que le script me permette d'accéder à des classes / structures qui représentent mon code : les variables, les appels de fonctions, avaec quels paramètres, etc…

Est-ce assez clair ?

Un petit exemple : je voudrais remplacer tous les appels qui commencent pas "toto_" :

ainsi :

int f(int i1, int i2) {  
£spaces£  £/spaces£char c1;  

£spaces£  £/spaces£toto_premier(i1, &c1);  
£spaces£  £/spaces£toto_second(i2, c2);  
}  

deviendrait :

int f(int i1, int i2) {  
£spaces£  £/spaces£char c1, c2;  

£spaces£  £/spaces£titi_permier(i1, &c1);  
£spaces£  £/spaces£titi_seconde(c1, &c2);  
£spaces£  £/spaces£titi_troisieme(i2, c2);  
}  

En fait, je veux remplacer différentes séries d'appel de fonctions (avec les variables etc…) par d'autres (en rajoutant les bonnes déclaration, etc…).

Des idées (google ne m'a pas trop aidé sur ce coup…) ?

  • # Raincode

    Posté par (page perso) . Évalué à 2.

    Salut,

    je connais un outil complet qui permet de parser différents types de code source, de plus ils ont créés un langage qui permet de parcourir l'arbre du code source et bien entendu, d'appliquer des modifications à cet arbre. Je l'ai utilisé durant mon stage et je dois dire que ça marchait vraiment bien... un peu casse-tête au début mais une fois que c'est compris, c'est facile.

    le problème est qu'il n'est pas libre et ne fonctionne que sous windows (je pense, pas sûr).
    L'outil s'appelle Raincode : http://www.raincode.com/(...)

    voilà, peut-être que cet outil pourra te guider vers d'autres outils mais libres.

    bye
    • [^] # Re: Raincode

      Posté par . Évalué à 1.

      Ah, merci beaucoup.

      Je regarde ça de suite...

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.