sim: Add metadata command

Only really needed for completeness, preferred content expressions can
match against metadata.
This commit is contained in:
Joey Hess 2024-09-26 12:20:37 -04:00
parent b492eb051b
commit 783e910d0c
No known key found for this signature in database
GPG key ID: DB12DB0FF05F8F38
5 changed files with 46 additions and 16 deletions

View file

@ -73,6 +73,8 @@ generateSimFile = unlines . map unwords . go
["group", repo, fromGroup group] : go rest
go (CommandUngroup (RepoName repo) group : rest) =
["ungroup", repo, fromGroup group] : go rest
go (CommandMetaData f modmeta : rest) =
["metadata", fromRawFilePath f, modmeta] : go rest
go (CommandWanted (RepoName repo) expr : rest) =
["wanted", repo, expr] : go rest
go (CommandRequired (RepoName repo) expr : rest) =
@ -188,6 +190,8 @@ parseSimCommand ("group":repo:group:[]) =
Right $ CommandGroup (RepoName repo) (toGroup group)
parseSimCommand ("ungroup":repo:group:[]) =
Right $ CommandUngroup (RepoName repo) (toGroup group)
parseSimCommand ("metadata":file:modmeta:[]) =
Right $ CommandMetaData (toRawFilePath file) modmeta
parseSimCommand ("wanted":repo:expr) =
Right $ CommandWanted (RepoName repo) (unwords expr)
parseSimCommand ("required":repo:expr) =