- rules_part
- { ( $2 -- Module name
- , ParsedIface {
- pi_mod = fromInteger $3, -- Module version
- pi_orphan = $4,
- pi_exports = $7, -- Exports
- pi_usages = $8, -- Usages
- pi_insts = $9, -- Local instances
- pi_decls = $10, -- Decls
- pi_rules = $11 -- Rules
- } ) }
+ rules_and_deprecs
+ { ParsedIface {
+ pi_mod = mkModule $3 $2, -- Module itself
+ pi_vers = $4, -- Module version
+ pi_orphan = $6,
+ pi_exports = $9, -- Exports
+ pi_usages = $10, -- Usages
+ pi_fixity = (fst $5,$11), -- Fixies
+ pi_insts = $12, -- Local instances
+ pi_decls = $13, -- Decls
+ pi_rules = (snd $5,fst $14), -- Rules
+ pi_deprecs = snd $14 -- Deprecations
+ } }
+
+-- Versions for fixities and rules (optional)
+sub_versions :: { (Version,Version) }
+ : '[' version version ']' { ($2,$3) }
+ | {- empty -} { (initialVersion, initialVersion) }