aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLibravatar Alexander Foremny <aforemny@posteo.de>2024-03-14 06:54:00 +0100
committerLibravatar Alexander Foremny <aforemny@posteo.de>2024-03-14 07:07:45 +0100
commit2c107e71572888327496d327a36737c02f64d894 (patch)
treec209961b40bce8c8874e7941801c4fbbade3ed40
parentf2e36372b4e07993a4992ab29585d4876b28e094 (diff)
chore: refactor `Comment.Language.fromPath`
-rw-r--r--app/Comment.hs11
-rw-r--r--app/Comment/Language.hs8
2 files changed, 8 insertions, 11 deletions
diff --git a/app/Comment.hs b/app/Comment.hs
index 123acec..febd47e 100644
--- a/app/Comment.hs
+++ b/app/Comment.hs
@@ -50,15 +50,8 @@ data Point = Point
getComments :: Git.CommitHash -> FilePath -> IO [Comment]
getComments commitHash filePath =
fmap mergeLineComments
- . ( extractComments
- filePath
- ( -- TODO Support amiguous file languages
- --
- -- @backlog
- N.head language
- )
- . LB.toStrict
- )
+ . extractComments filePath language
+ . LB.toStrict
=<< catch
(Git.readTextFileOfBS commitHash filePath)
(\(_ :: E.CannotReadFile) -> pure "")
diff --git a/app/Comment/Language.hs b/app/Comment/Language.hs
index 7a9963f..3f8c7a4 100644
--- a/app/Comment/Language.hs
+++ b/app/Comment/Language.hs
@@ -25,9 +25,13 @@ newtype Language = Language {languageKey :: L.LanguageKey}
deriving (Eq, Show, Generic)
deriving newtype (Binary)
-fromPath :: FilePath -> N.NonEmpty Language
+-- TODO Support amiguous file languages
+--
+-- @backlog
+fromPath :: FilePath -> Language
fromPath fp =
- fromMaybe (throw $ E.UnknownFile fp)
+ N.head
+ . fromMaybe (throw $ E.UnknownFile fp)
. N.nonEmpty
. map (Language . L.languageName)
$ L.languagesForPath fp