blob: 10a4e276c240567ab6ee697bddfdb01cc49f7132 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
(* Parsing /etc/portage/package.use *)
module Packageuse =
autoload xfm
let sep_spc = Util.del_ws_spc
let sep_tab = Util.del_ws_tab
let eol = del /[ \t]*\n/ "\n"
let indent = del /[ \t]*/ ""
let comment = Util.comment
let empty = [ del /[ \t]*#?[ \t]*\n/ "\n" ]
let word = /[^# \n\t]+/
let record = [ seq "packageuse" . indent .
[ label "package" . store word ] . sep_tab .
[ label "use" . store word ] .
[ label "use" . sep_spc . store word ]*
. (comment|eol) ]
let lns = ( empty | comment | record ) *
let filter = (incl "/etc/portage/package.use")
. (incl "/etc/portage/package.use/*")
let xfm = transform lns filter
|