y.tab.h

Description du code

y.tab.h est un fichier du projet Compilateur LSD010.
Ce fichier est situé dans /var/www/bin/sniplets/lsd010/.

Projet Compilateur LSD010 :

Compilateur LSD010 développé dans le cadre du cours de syntaxe et sémantiqueref 1

Code source ou contenu du fichier

  1. /* A Bison parser, made by GNU Bison 2.4.1. */
  2.  
  3. /* Skeleton interface for Bison's Yacc-like parsers in C
  4.  
  5.   Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006
  6.   Free Software Foundation, Inc.
  7.  
  8.   This program is free software: you can redistribute it and/or modify
  9.   it under the terms of the GNU General Public License as published by
  10.   the Free Software Foundation, either version 3 of the License, or
  11.   (at your option) any later version.
  12.  
  13.   This program is distributed in the hope that it will be useful,
  14.   but WITHOUT ANY WARRANTY; without even the implied warranty of
  15.   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  16.   GNU General Public License for more details.
  17.  
  18.   You should have received a copy of the GNU General Public License
  19.   along with this program. If not, see <http://www.gnu.org/licenses/>. */
  20.  
  21. /* As a special exception, you may create a larger work that contains
  22.   part or all of the Bison parser skeleton and distribute that work
  23.   under terms of your choice, so long as that work isn't itself a
  24.   parser generator using the skeleton or a modified version thereof
  25.   as a parser skeleton. Alternatively, if you modify or redistribute
  26.   the parser skeleton itself, you may (at your option) remove this
  27.   special exception, which will cause the skeleton and the resulting
  28.   Bison output files to be licensed under the GNU General Public
  29.   License without this special exception.
  30.  
  31.   This special exception was added by the Free Software Foundation in
  32.   version 2.2 of Bison. */
  33.  
  34.  
  35. /* Tokens. */
  36. #ifndef YYTOKENTYPE
  37. # define YYTOKENTYPE
  38. /* Put the tokens into the symbol table, so that GDB and other debuggers
  39.   know about them. */
  40. enum yytokentype {
  41. LEXICAL_BOOLEAN_TYPE = 258,
  42. LEXICAL_INTEGER_TYPE = 259,
  43. LEXICAL_VOID_TYPE = 260,
  44. LEXICAL_INSTACK_TYPE = 261,
  45. NUMBER = 262,
  46. LEXICAL_TRUE_VAL = 263,
  47. LEXICAL_FALSE_VAL = 264,
  48. LEXICAL_AND = 265,
  49. LEXICAL_OR = 266,
  50. LEXICAL_ANDLAZY = 267,
  51. LEXICAL_ORLAZY = 268,
  52. LEXICAL_NOT = 269,
  53. LEXICAL_EQUALS = 270,
  54. LEXICAL_LESS_EQUALS = 271,
  55. LEXICAL_LESS = 272,
  56. LEXICAL_AFFECTATION = 273,
  57. LEXICAL_PLUS = 274,
  58. LEXICAL_MINUS = 275,
  59. LEXICAL_MULT = 276,
  60. LEXICAL_DIV = 277,
  61. LEXICAL_MOD = 278,
  62. L_PARENTHESIS = 279,
  63. LSQUI_BRACKET = 280,
  64. LSQUA_BRACKET = 281,
  65. POINT = 282,
  66. RSQUA_BRACKET = 283,
  67. R_PARENTHESIS = 284,
  68. RSQUI_BRACKET = 285,
  69. LEXICAL_GET_OPS = 286,
  70. LEXICAL_ISEMPTY_OPS = 287,
  71. LEXICAL_WRITE_OPS = 288,
  72. LEXICAL_READ_OPS = 289,
  73. LEXICAL_PUT_OPS = 290,
  74. LEXICAL_RETURN_STMT = 291,
  75. LEXICAL_IF_STMT = 292,
  76. LEXICAL_ELSE_STMT = 293,
  77. LEXICAL_WHILE_STMT = 294,
  78. LEXICAL_FLEXICAL_OR_STMT = 295,
  79. COLON = 296,
  80. SEMICOLON = 297,
  81. COMMA = 298,
  82. LEXICAL_VAR = 299,
  83. ID = 300
  84. };
  85. #endif
  86. /* Tokens. */
  87. #define LEXICAL_BOOLEAN_TYPE 258
  88. #define LEXICAL_INTEGER_TYPE 259
  89. #define LEXICAL_VOID_TYPE 260
  90. #define LEXICAL_INSTACK_TYPE 261
  91. #define NUMBER 262
  92. #define LEXICAL_TRUE_VAL 263
  93. #define LEXICAL_FALSE_VAL 264
  94. #define LEXICAL_AND 265
  95. #define LEXICAL_OR 266
  96. #define LEXICAL_ANDLAZY 267
  97. #define LEXICAL_ORLAZY 268
  98. #define LEXICAL_NOT 269
  99. #define LEXICAL_EQUALS 270
  100. #define LEXICAL_LESS_EQUALS 271
  101. #define LEXICAL_LESS 272
  102. #define LEXICAL_AFFECTATION 273
  103. #define LEXICAL_PLUS 274
  104. #define LEXICAL_MINUS 275
  105. #define LEXICAL_MULT 276
  106. #define LEXICAL_DIV 277
  107. #define LEXICAL_MOD 278
  108. #define L_PARENTHESIS 279
  109. #define LSQUI_BRACKET 280
  110. #define LSQUA_BRACKET 281
  111. #define POINT 282
  112. #define RSQUA_BRACKET 283
  113. #define R_PARENTHESIS 284
  114. #define RSQUI_BRACKET 285
  115. #define LEXICAL_GET_OPS 286
  116. #define LEXICAL_ISEMPTY_OPS 287
  117. #define LEXICAL_WRITE_OPS 288
  118. #define LEXICAL_READ_OPS 289
  119. #define LEXICAL_PUT_OPS 290
  120. #define LEXICAL_RETURN_STMT 291
  121. #define LEXICAL_IF_STMT 292
  122. #define LEXICAL_ELSE_STMT 293
  123. #define LEXICAL_WHILE_STMT 294
  124. #define LEXICAL_FLEXICAL_OR_STMT 295
  125. #define COLON 296
  126. #define SEMICOLON 297
  127. #define COMMA 298
  128. #define LEXICAL_VAR 299
  129. #define ID 300
  130.  
  131.  
  132.  
  133.  
  134. #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
  135. typedef union YYSTYPE
  136. {
  137.  
  138. /* Line 1676 of yacc.c */
  139. #line 45 "lsd10.y"
  140.  
  141. int nval;
  142. char *text;
  143. struct astNode *node;
  144.  
  145.  
  146.  
  147. /* Line 1676 of yacc.c */
  148. #line 150 "y.tab.h"
  149. } YYSTYPE;
  150. # define YYSTYPE_IS_TRIVIAL 1
  151. # define yystype YYSTYPE /* obsolescent; will be withdrawn */
  152. # define YYSTYPE_IS_DECLARED 1
  153. #endif
  154.  
  155. extern YYSTYPE yylval;
  156.  
  157. #if ! defined YYLTYPE && ! defined YYLTYPE_IS_DECLARED
  158. typedef struct YYLTYPE
  159. {
  160. int first_line;
  161. int first_column;
  162. int last_line;
  163. int last_column;
  164. } YYLTYPE;
  165. # define yyltype YYLTYPE /* obsolescent; will be withdrawn */
  166. # define YYLTYPE_IS_DECLARED 1
  167. # define YYLTYPE_IS_TRIVIAL 1
  168. #endif
  169.  
  170. extern YYLTYPE yylloc;

Structure et Fichiers du projet

Afficher/masquer...


Répertoires contenus dans /var/www/bin/sniplets/lsd010/project/source/ 
IcôneNomTailleModification
Pas de sous-répertoires.
IcôneNomTailleModification
| _ Répertoire parent0 octets1734880308 22/12/2024 16:11:48
Fichiers contenus dans /var/www/bin/sniplets/lsd010/project/source/ 
IcôneNomTailleModificationAction
IcôneNomTailleModificationAction
Afficher le fichier .o|.ographVizHelper.o4.72 Ko31/10/2018 18:32:37-refusé-
Afficher le fichier .c|.cast.c27.73 Ko31/10/2018 18:32:37-refusé-
Afficher le fichier .h|.hconst.h4.01 Ko31/10/2018 18:32:37-refusé-
Afficher le fichier .c|.cy.tab.c84.53 Ko31/10/2018 18:32:39-refusé-
Afficher le fichier .y|.ylsd10.y22.88 Ko31/10/2018 18:32:38-refusé-
Afficher le fichier .o|.olex.yy.o18.88 Ko31/10/2018 18:32:38-refusé-
Afficher le fichier .c|.cscopeStack.c3.69 Ko31/10/2018 18:32:38-refusé-
Afficher le fichier .h|.hgraphVizHelper.h573 octets31/10/2018 18:32:37-refusé-
Afficher le fichier .h|.hsymbolsTableDataRepresentation.h1.31 Ko31/10/2018 18:32:38-refusé-
Afficher le fichier .o|.osymbolsTable.o5.2 Ko31/10/2018 18:32:38-refusé-
Afficher le fichier .h|.hcommon.h1.08 Ko31/10/2018 18:32:37-refusé-
Afficher le fichier .c|.cscopeHelper.c4.09 Ko31/10/2018 18:32:38-refusé-
Afficher le fichier .o|.ohashCode.o1.45 Ko31/10/2018 18:32:37-refusé-
Afficher le fichier .h|.hconsole.h2.21 Ko31/10/2018 18:32:37-refusé-
Afficher le fichier .o|.oconsole.o12.23 Ko31/10/2018 18:32:37-refusé-
Afficher le fichier .|lsd10lsd1075.26 Ko31/10/2018 18:32:38-refusé-
Afficher le fichier .h|.hhashCode.h1020 octets31/10/2018 18:32:37-refusé-
Afficher le fichier .h|.hsymbolsTable.h2.65 Ko31/10/2018 18:32:38-refusé-
Afficher le fichier .h|.hpcode.h417 octets31/10/2018 18:32:38-refusé-
Afficher le fichier .o|.oast.o11.45 Ko31/10/2018 18:32:37-refusé-
Afficher le fichier .h|.hscopeStack.h2.2 Ko31/10/2018 18:32:38-refusé-
Afficher le fichier .c|.cgraphVizHelper.c6.11 Ko31/10/2018 18:32:37-refusé-
Afficher le fichier .l|.llsd10.l6.46 Ko31/10/2018 18:32:38-refusé-
Afficher le fichier .h|.hy.tab.h4.69 Ko31/10/2018 18:32:39-refusé-
Afficher le fichier .output|.outputy.output81.69 Ko31/10/2018 18:32:39-refusé-
Afficher le fichier .o|.oy.tab.o24.45 Ko31/10/2018 18:32:39-refusé-
Afficher le fichier .c|.clex.yy.c57.93 Ko31/10/2018 18:32:37-refusé-
Afficher le fichier .h|.hast.h2.39 Ko31/10/2018 18:32:37-refusé-
Afficher le fichier .o|.oscopeStack.o1.34 Ko31/10/2018 18:32:38-refusé-
Afficher le fichier .o|.oscopeHelper.o2.59 Ko31/10/2018 18:32:38-refusé-
Afficher le fichier .h|.hastDataRepresentation.h1.87 Ko31/10/2018 18:32:37-refusé-
Afficher le fichier .c|.csymbolsTable.c14.91 Ko31/10/2018 18:32:38-refusé-
Afficher le fichier .c|.cpcode.c23.45 Ko31/10/2018 18:32:38-refusé-
Afficher le fichier .c|.chashCode.c3.94 Ko31/10/2018 18:32:37-refusé-
Afficher le fichier .c|.cconsole.c18.01 Ko31/10/2018 18:32:37-refusé-
Afficher le fichier .h|.hscopeHelper.h719 octets31/10/2018 18:32:38-refusé-

Warning

Ce code présente une manière possible d'implémenter un compilateur, et certains choix peuvent être discutés.
Cependant, il peut donner des pistes pour démarrer, ou approcher certains concepts, et je tenterais par la suite de mettre à jour le code.

Utilisation de l'explorateur de code

  • Navigation :
    • Un clic sur une icône de répertoire ouvre ce répertoire pour en afficher les fichiers.
    • Lorsque le répertoire en cours ne contient pas de sous-répertoires il est possible de remonter vers le répertoire parent.
    • La structure de répertoires en treetable (tableau en forme d'arborescence) n'est plus possibledans cette version.
    • Un clic sur une icône de fichier ouvre ce fichier pour en afficher le code avec la coloration syntaxique adaptée en fonction du langage principal utilisé dans le fichier.
  • Affichage :
    • Il est possible de trier les répertoires ou les fichiers selon certains critères (nom, taille, date).
  • Actions :
    • Les actions possible sur les fichiers dépendent de vos droits d'utilisateur sur le site. Veuillez activer le mode utilisateur pour activer les actions.

English translation

You have asked to visit this site in English. For now, only the interface is translated, but not all the content yet.

If you want to help me in translations, your contribution is welcome. All you need to do is register on the site, and send me a message asking me to add you to the group of translators, which will give you the opportunity to translate the pages you want. A link at the bottom of each translated page indicates that you are the translator, and has a link to your profile.

Thank you in advance.

Document created the 07/03/2010, last modified the 28/10/2018
Source of the printed document:https://www.gaudry.be/en/langages-lsd10-source-rf-project/source//y.tab.h.html

The infobrol is a personal site whose content is my sole responsibility. The text is available under CreativeCommons license (BY-NC-SA). More info on the terms of use and the author.

Notes
  1. a,b LSD010 : Langage Simple et Didactique Il existe une un certain nombre d'interprétations de l'acronyme LSD (Langage Symbolique Didactique, Langage Sans Difficulté, Langage Simple et Didactique). LSD010 est la version 2010 de la suite LSD80, LSD_02, LSD03, LSD04, LSD05, LSD06, LSD07, LSD08, et LSD09.

Contents Haut

References

  1. book Language of the document:fr IHDCB332 - Théorie des langages : Syntaxe et sémantique : PY Schobbens, Syntaxe et sémantique (January 2010)

These references and links indicate documents consulted during the writing of this page, or which may provide additional information, but the authors of these sources can not be held responsible for the content of this page.
The author This site is solely responsible for the way in which the various concepts, and the freedoms that are taken with the reference works, are presented here. Remember that you must cross multiple source information to reduce the risk of errors.

Contents Haut