1
0
forked from GitHub/gf-core

added showPGF in the Haskell API

This commit is contained in:
Krasimir Angelov
2017-09-25 18:31:36 +02:00
parent d79ac56870
commit 404154d16b

View File

@@ -19,7 +19,7 @@
#include <gu/exn.h>
module PGF2 (-- * PGF
PGF,readPGF,
PGF,readPGF,showPGF,
-- * Identifiers
CId,
@@ -137,6 +137,17 @@ readPGF fpath =
pgfFPtr <- newForeignPtr gu_pool_finalizer pool
return (PGF pgf (touchForeignPtr pgfFPtr))
showPGF :: PGF -> String
showPGF p =
unsafePerformIO $
withGuPool $ \tmpPl ->
do (sb,out) <- newOut tmpPl
exn <- gu_new_exn tmpPl
pgf_print (pgf p) out exn
touchPGF p
s <- gu_string_buf_freeze sb tmpPl
peekUtf8CString s
-- | List of all languages available in the grammar.
languages :: PGF -> Map.Map ConcName Concr
languages p =