X-Git-Url: https://git.saurik.com/bison.git/blobdiff_plain/cff03fb2b92a05f61c142783dd3b2e0103782869..a17187e56386747a9b4d9633c3d116c2087f2b8b:/src/gram.h diff --git a/src/gram.h b/src/gram.h index 57097379..75b3b0a9 100644 --- a/src/gram.h +++ b/src/gram.h @@ -1,7 +1,7 @@ /* Data definitions for internal representation of Bison's input. - Copyright (C) 1984, 1986, 1989, 1992, 2001, 2002, 2003, 2004, 2005, 2006 - 2007 Free Software Foundation, Inc. + Copyright (C) 1984, 1986, 1989, 1992, 2001-2007, 2009-2012 Free + Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. @@ -105,8 +105,8 @@ # include "location.h" # include "symtab.h" -# define ISTOKEN(i) ((i) < ntokens) -# define ISVAR(i) ((i) >= ntokens) +# define ISTOKEN(i) ((i) < ntokens) +# define ISVAR(i) ((i) >= ntokens) extern int nsyms; extern int ntokens; @@ -194,6 +194,7 @@ typedef struct location location; bool useful; + bool is_predicate; const char *action; location action_location; @@ -223,7 +224,7 @@ void rule_lhs_print (rule *r, symbol *previous_lhs, FILE *out); void rule_lhs_print_xml (rule *r, FILE *out, int level); /* Return the length of the RHS. */ -int rule_rhs_length (rule *r); +size_t rule_rhs_length (rule *r); /* Print this rule's RHS on OUT. */ void rule_rhs_print (rule *r, FILE *out); @@ -253,12 +254,11 @@ size_t ritem_longest_rhs (void); /* Print the grammar's rules that match FILTER on OUT under TITLE. */ void grammar_rules_partial_print (FILE *out, const char *title, - rule_filter filter); -void grammar_rules_partial_print_xml (FILE *out, int level, bool rtag, - rule_filter filter); + rule_filter filter); /* Print the grammar's useful rules on OUT. */ void grammar_rules_print (FILE *out); +/* Print all of the grammar's rules with a "usefulness" attribute. */ void grammar_rules_print_xml (FILE *out, int level); /* Dump the grammar. */