remove pattern synonyms which introduced excessive overhead

This commit is contained in:
Zachary Snow
2020-07-09 21:01:18 -06:00
parent ff166df59c
commit 69b2e86aee
12 changed files with 37 additions and 33 deletions
+6 -2
View File
@@ -65,6 +65,8 @@ convertExpr (orig @ (DimsFn FnUnpackedDimensions (Left t))) =
convertExpr (orig @ (DimsFn FnDimensions (Left t))) =
case t of
IntegerAtom{} -> Number "1"
Alias{} -> orig
PSAlias{} -> orig
CSAlias{} -> orig
TypeOf{} -> orig
UnpackedType t' rs ->
@@ -95,8 +97,10 @@ convertExpr (DimFn f (Left t) (Number str)) =
Just d = dm
r = rs !! (fromIntegral $ d - 1)
isUnresolved :: Type -> Bool
isUnresolved (CSAlias{}) = True
isUnresolved (TypeOf{}) = True
isUnresolved Alias{} = True
isUnresolved PSAlias{} = True
isUnresolved CSAlias{} = True
isUnresolved TypeOf{} = True
isUnresolved _ = False
convertExpr (DimFn f (Left t) d) =
DimFn f (Left t) d