]> git.saurik.com Git - bison.git/blobdiff - src/symlist.h
* data/glr.c (yyuserMerge, yyreportAmbiguity, yyreportSyntaxError):
[bison.git] / src / symlist.h
index 33aae34ed083b8c38c7127f7bc015b19c20edad2..e4714f6cdcf717352de00e6d702428c2dfa23c27 100644 (file)
@@ -1,5 +1,6 @@
 /* Lists of symbols for Bison
 /* Lists of symbols for Bison
-   Copyright (C) 2002  Free Software Foundation, Inc.
+
+   Copyright (C) 2002, 2005 Free Software Foundation, Inc.
 
    This file is part of Bison, the GNU Compiler Compiler.
 
 
    This file is part of Bison, the GNU Compiler Compiler.
 
 
    You should have received a copy of the GNU General Public License
    along with Bison; see the file COPYING.  If not, write to
 
    You should have received a copy of the GNU General Public License
    along with Bison; see the file COPYING.  If not, write to
-   the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-   Boston, MA 02111-1307, USA.  */
+   the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+   Boston, MA 02110-1301, USA.  */
 
 #ifndef SYMLIST_H_
 # define SYMLIST_H_
 
 
 #ifndef SYMLIST_H_
 # define SYMLIST_H_
 
-# include "symtab.h"
 # include "location.h"
 # include "location.h"
+# include "symtab.h"
 
 
-typedef struct symbol_list_s
+typedef struct symbol_list
 {
 {
-  struct symbol_list_s *next;
-  symbol_t *sym;
-  location_t location;
+  struct symbol_list *next;
+  symbol *sym;
+  location location;
 
   /* The action is attached to the LHS of a rule. */
   const char *action;
 
   /* The action is attached to the LHS of a rule. */
   const char *action;
-  location_t action_location;
+  location action_location;
 
 
-  symbol_t *ruleprec;
+  symbol *ruleprec;
   int dprec;
   int merger;
   int dprec;
   int merger;
-} symbol_list_t;
+} symbol_list;
+
 
 
+/* Create a list containing SYM at LOC.  */
+symbol_list *symbol_list_new (symbol *sym, location loc);
 
 
-/* Create a list containing SYMBOL at LOCATION.  */
-symbol_list_t *symbol_list_new (symbol_t *sym, location_t location);
+/* Print it.  */
+void symbol_list_print (symbol_list *l, FILE *f);
 
 
-/* Prepend SYMBOL at LOCATION to the LIST.  */
-symbol_list_t * symbol_list_prepend (symbol_list_t *list,
-                                    symbol_t *symbol,
-                                    location_t location);
+/* Prepend SYM at LOC to the LIST.  */
+symbol_list *symbol_list_prepend (symbol_list *list,
+                                 symbol *sym,
+                                 location loc);
 
 /* Free the LIST, but not the symbols it contains.  */
 
 /* Free the LIST, but not the symbols it contains.  */
-void symbol_list_free (symbol_list_t *list);
+void symbol_list_free (symbol_list *list);
 
 /* Return its length. */
 
 /* Return its length. */
-unsigned int symbol_list_length (symbol_list_t *list);
+unsigned int symbol_list_length (symbol_list *list);
 
 /* Get the data type (alternative in the union) of the value for
    symbol N in rule RULE.  */
 
 /* Get the data type (alternative in the union) of the value for
    symbol N in rule RULE.  */
-struniq_t symbol_list_n_type_name_get (symbol_list_t *rule,
-                                  location_t location, int n);
+uniqstr symbol_list_n_type_name_get (symbol_list *rp, location loc, int n);
 
 #endif /* !SYMLIST_H_ */
 
 #endif /* !SYMLIST_H_ */