IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C Discussion :

Ecrire son compilateur


Sujet :

C

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2011
    Messages
    903
    Détails du profil
    Informations personnelles :
    Localisation : France, Vienne (Poitou Charente)

    Informations forums :
    Inscription : Mai 2011
    Messages : 903
    Points : 85
    Points
    85
    Par défaut Ecrire son compilateur
    Bonjour,

    J'ai découvert ANTLR pour écrire son propre compilateur.
    Finalement j'ai vite dechanter ,je vais reprendre le mien , ANTLR à été écrit et fait pour quelques personnes !
    3 heures de passer. Merci ANTLR .
    Impossibilité de créer ses visiteurs (parcours de source) .

    Si vous souhaitez développer un compilateur , il faut le faire soi même !.
    Je vous joint comme même le source qui ne compile pas !

    Le source est trés incomplet , il gére que le visiteur ,c'était pour tester ! mais ne produit pas de ......

    Merci .
    Fichiers attachés Fichiers attachés
    • Type de fichier : zip tc.zip (101,8 Ko, 39 affichages)

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2011
    Messages
    903
    Détails du profil
    Informations personnelles :
    Localisation : France, Vienne (Poitou Charente)

    Informations forums :
    Inscription : Mai 2011
    Messages : 903
    Points : 85
    Points
    85
    Par défaut
    Finalement il ajouter les lignes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    TreeShapeListener listener;
    	tree::ParseTreeWalker::DEFAULT.walk(&listener, ef);
    CParser::CompilationUnitContext* ef=parser.compilationUnit();
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
     
    class TreeShapeListener : public CBaseListener {
    public:
    	void enterEveryRule(ParserRuleContext *ctx) override {
    		// Do something when entering the key rule.
    		ctx = ctx;
    	}
    	void exitEveryRule(antlr4::ParserRuleContext *ctx) override {
    		ctx = ctx;
    	}
     
    	 void enterFunctionSpecifier(CParser::FunctionSpecifierContext * ctx) override {
    		 ctx = ctx;
    	 }
    	 void exitFunctionSpecifier(CParser::FunctionSpecifierContext * ctx) override { 
    		 ctx = ctx;
    	 }
    ...
    ...
    ...
    ...
    }
    et c'est bon.
    Il fallait comme même trouver cette méthode.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 5
    Dernier message: 16/01/2018, 11h57
  2. [tomcat 5.5] Ecrire son propre persistent manager
    Par Cyber@l dans le forum Tomcat et TomEE
    Réponses: 1
    Dernier message: 24/10/2008, 14h47
  3. VS 2005 Compiler son Site Web a la mode VS2003
    Par Geo79 dans le forum ASP.NET
    Réponses: 4
    Dernier message: 12/07/2006, 17h03
  4. Réponses: 5
    Dernier message: 27/05/2006, 12h06
  5. ecrire son OS (assembleur ??)
    Par Anonymous dans le forum Programmation d'OS
    Réponses: 9
    Dernier message: 25/11/2002, 19h25

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo