diff options
| author | Eugen Wissner <belka@caraus.de> | 2024-02-06 12:14:07 +0100 |
|---|---|---|
| committer | Eugen Wissner <belka@caraus.de> | 2024-02-06 12:14:07 +0100 |
| commit | 23271d6f6cf033230106f07ae14985f3b85f906a (patch) | |
| tree | 4299eb1ccae58f52a450bf86497b311e1f31ccad /lib/Graphics/Fountainhead.hs | |
| parent | 3160ceab080fca8fef0cf2cf196b46284d15c19f (diff) | |
| download | fountainhead-23271d6f6cf033230106f07ae14985f3b85f906a.tar.gz | |
Add an option for dumping a single table
Diffstat (limited to 'lib/Graphics/Fountainhead.hs')
| -rw-r--r-- | lib/Graphics/Fountainhead.hs | 10 |
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 |
