| |||||||||||||||||
| |||||||||||||||||
Description | |||||||||||||||||
This module defines optimizing transformations for VDM_SL. | |||||||||||||||||
Synopsis | |||||||||||||||||
| |||||||||||||||||
Documentation | |||||||||||||||||
optimizeTables :: [Field] -> [Field] | |||||||||||||||||
?? | |||||||||||||||||
unifyCompose :: [Type] -> Type | |||||||||||||||||
?? | |||||||||||||||||
composeFusion :: Type -> Type -> Type | |||||||||||||||||
Function that makes the fusion of two composes Case 1: (A1 * A2 * ...) nil = (A1 * A2 * ...) Case 2: nil (B1 * B2 * ...) = (B1 * B2 * ...) Case 3: (A1 * A2 * ...) (B1 * B2 * ...) = (A1 * A2 * ... * B1 * B2 * ...) | |||||||||||||||||
compareCompose :: Type -> Type -> Bool | |||||||||||||||||
Function that compare two composes. Two composes are equal if their FIELD_LIST are equal. This ignores the compose identifier, that haves no meaning here. | |||||||||||||||||
collectUniqueKeys :: [Field] -> [(Name, Type)] | |||||||||||||||||
?? | |||||||||||||||||
findKeys :: [Field] -> [(Name, Type)] | |||||||||||||||||
?? | |||||||||||||||||
collectRng :: Term r => Type -> r -> [Type] | |||||||||||||||||
?? | |||||||||||||||||
optimizeComposes :: [Field] -> [Field] | |||||||||||||||||
Optmize nested composes. | |||||||||||||||||
composeMerge :: Field -> [Field] | |||||||||||||||||
Merge the outer compose with the inner one if they exist. | |||||||||||||||||
Produced by Haddock version 0.6 |