From 373a7aef9447044ba2c7339774e5cfaa21eb3cff Mon Sep 17 00:00:00 2001
From: "Sven M. Hallberg" <pesco@khjk.org>
Date: Fri, 7 Jun 2013 16:29:14 +0200
Subject: [PATCH] make h_pprint_char from cfgrammar public so LR pretty
 printers can use it

---
 src/cfgrammar.c | 8 ++++----
 src/cfgrammar.h | 1 +
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/src/cfgrammar.c b/src/cfgrammar.c
index 0c51589a..bc7b3582 100644
--- a/src/cfgrammar.c
+++ b/src/cfgrammar.c
@@ -595,7 +595,7 @@ static void stringset_extend(HCFGrammar *g, HStringMap *ret,
 }
 
 
-static void pprint_char(FILE *f, char c)
+void h_pprint_char(FILE *f, char c)
 {
   switch(c) {
   case '"': fputs("\\\"", f); break;
@@ -619,7 +619,7 @@ static void pprint_charset_char(FILE *f, char c)
   case '"': fputc(c, f); break;
   case '-': fputs("\\-", f); break;
   case ']': fputs("\\-", f); break;
-  default:  pprint_char(f, c);
+  default:  h_pprint_char(f, c);
   }
 }
 
@@ -667,7 +667,7 @@ static HCFChoice **pprint_string(FILE *f, HCFChoice **x)
   for(; *x; x++) {
     if((*x)->type != HCF_CHAR)
       break;
-    pprint_char(f, (*x)->chr);
+    h_pprint_char(f, (*x)->chr);
   }
   fputc('"', f);
   return x;
@@ -678,7 +678,7 @@ void h_pprint_symbol(FILE *f, const HCFGrammar *g, const HCFChoice *x)
   switch(x->type) {
   case HCF_CHAR:
     fputc('"', f);
-    pprint_char(f, x->chr);
+    h_pprint_char(f, x->chr);
     fputc('"', f);
     break;
   case HCF_END:
diff --git a/src/cfgrammar.h b/src/cfgrammar.h
index 6aba29cc..a5de4d6b 100644
--- a/src/cfgrammar.h
+++ b/src/cfgrammar.h
@@ -93,3 +93,4 @@ void h_pprint_sequence(FILE *f, const HCFGrammar *g, const HCFSequence *seq);
 void h_pprint_symbol(FILE *f, const HCFGrammar *g, const HCFChoice *x);
 void h_pprint_symbolset(FILE *file, const HCFGrammar *g, const HHashSet *set, int indent);
 void h_pprint_stringset(FILE *file, const HStringMap *set, int indent);
+void h_pprint_char(FILE *file, char c);
-- 
GitLab