Forum |  HardWare.fr | News | Articles | PC | Prix | S'identifier | S'inscrire | Shop Recherche
2030 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  AntLtr parser et probléme étrange

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

AntLtr parser et probléme étrange

n°2378150
yann58
Posté le 09-03-2021 à 21:35:49  profilanswer
 

Bonjour,
 
JJ'ai tester l'API AntLTR 4.7.2 en suivant la documentation --> ca fonctionne bien.
 
J'écris un compilateur et  
j'ai un soucis :

Code :
  1. CParser::TypeSpecifierContext * et = pp->typeSpecifier();
  2.  CParser::TypeSpecifierContext * lastet = NULL;
  3.  while (et != NULL)
  4.  {
  5. #ifdef _DEBUG
  6.   sdebug = et->getText();
  7. #endif
  8.   et = et->typeSpecifier();
  9.  }


 

Code :
  1. CParser::TranslationUnitContext *uv = ef->translationUnit();
  2. while (uv != NULL)
  3. {
  4.  size_t ss = uv->getRuleIndex();
  5. #ifdef _DEBUG
  6.  dbg = uv->getText();
  7. #endif
  8.  CParser::ExternalDeclarationContext *dextrnctx = uv->externalDeclaration();
  9.  if (dextrnctx != NULL)
  10.  {
  11. #ifdef _DEBUG
  12.   dbg = dextrnctx->getText();
  13. #endif
  14.   CParser::FunctionDefinitionContext *func=dextrnctx->functionDefinition();
  15.   if (func != NULL)
  16.   {
  17. #ifdef _DEBUG
  18.    dbg = func->getText();
  19. #endif
  20.   }
  21.   CParser::DeclarationContext  *dextrn = dextrnctx->declaration();
  22.   if (dextrn != NULL)
  23.   {
  24. #ifdef _DEBUG
  25.    dbg = dextrn->getText();
  26. #endif
  27.     DefTypeFromDecalarationContext(cc, dextrn, &cc->dvarandtyp);
  28.   }
  29.   //cc->HVAR = DefTypeFromDecalarationContextUntilCompoundStatementContext(cc, ef, CN_EXTERNAL_DECLARATION_CONTEXT_VAR_MAIN);
  30.  }
  31.  uv = uv->translationUnit();
  32. }
  33. return ret;


 
Ca marche , mais ca retourne à l'envers  c'est à dire ca part de la fin vers le début.
 
Pourquoi ? Est ce normal ? Comment faire ?
 
Je ne veux pas passer par les visiteurs car c'est un peu trop complexes
 
 
Merci.


Message édité par yann58 le 09-03-2021 à 21:36:56
mood
Publicité
Posté le 09-03-2021 à 21:35:49  profilanswer
 

n°2378615
WiiDS
20 titres en GC, 0 abandon, 0 DQ
Posté le 12-03-2021 à 17:53:22  profilanswer
 

Ca dépend de l'implémentation de ta grammaire.


---------------
"I can cry like Roger. It's just a shame I can't play like him" - Andy Murray, 2010
n°2378736
yann58
Posté le 13-03-2021 à 20:51:16  profilanswer
 

ca vient pourtant de la grammaire fournit par Antltr, c'est à dire le fichier c.g4 télégarger dans github AntLtr


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  AntLtr parser et probléme étrange

 

Sujets relatifs
résolu -*Problème de double quote dans paramètres fonction[PHP] Problème stylesheet CSS indisponible sur une page (MODEL MVC)
Probleme d'installation de PHP-8.0.0[CSS]Problème Mise en page
problème minecraft : java head spaceYouTube - problème CSS
Problème reception mail depuis un formulaire (OVH)[PHP] Problème nouveau avec exif_read_data
Probleme list -> apprentissage PHPProblème de connexion de client (Socket)
Plus de sujets relatifs à : AntLtr parser et probléme étrange


Copyright © 1997-2018 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR