Module Allowance.Magic_allow_disallowSource
Takes a slow but type-correct Allow_disallow module and returns the magic version, which is faster. NOTE: for this to be sound, the functions in the original module must be identity functions (up to runtime representation).
Parameters
module X : Allow_disallowSignature
Disallows on the right.
Disallows a the left.
Generalizes a right-hand-side allowed to be any allowance.