From 23271d6f6cf033230106f07ae14985f3b85f906a Mon Sep 17 00:00:00 2001 From: Eugen Wissner Date: Tue, 6 Feb 2024 12:14:07 +0100 Subject: Add an option for dumping a single table --- lib/Graphics/Fountainhead.hs | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'lib/Graphics/Fountainhead.hs') diff --git a/lib/Graphics/Fountainhead.hs b/lib/Graphics/Fountainhead.hs index 3852d51..8e36517 100644 --- a/lib/Graphics/Fountainhead.hs +++ b/lib/Graphics/Fountainhead.hs @@ -10,7 +10,7 @@ module Graphics.Fountainhead import Data.ByteString (ByteString) import Data.Void (Void) -import Graphics.Fountainhead.Dumper (dumpTables, DumpError(..)) +import Graphics.Fountainhead.Dumper (dumpTable, dumpTables, DumpError(..)) import Graphics.Fountainhead.Parser (ParseErrorBundle, fontDirectoryP) import Graphics.Fountainhead.TrueType (FontDirectory(..)) import qualified Text.Megaparsec as Megaparsec @@ -42,8 +42,8 @@ parseFontDirectoryFromFile fontFile = } in Megaparsec.runParser' fontDirectoryP initialState -dumpFontFile :: FilePath -> IO (Either DumpError Text.Builder.Builder) -dumpFontFile fontFile = do +dumpFontFile :: FilePath -> Maybe String -> IO (Either DumpError Text.Builder.Builder) +dumpFontFile fontFile tableName = do + let dumpRequest = maybe dumpTables dumpTable tableName (processedState, initialResult) <- parseFontDirectoryFromFile fontFile - - pure $ first DumpParseError initialResult >>= dumpTables processedState + pure $ first DumpParseError initialResult >>= dumpRequest processedState -- cgit v1.2.3