summaryrefslogtreecommitdiff
path: root/lib/Graphics/Fountainhead.hs
diff options
context:
space:
mode:
Diffstat (limited to 'lib/Graphics/Fountainhead.hs')
-rw-r--r--lib/Graphics/Fountainhead.hs10
1 files changed, 5 insertions, 5 deletions
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