on master help sign in
fix hlint suggestions
commit90261ddc31a84d515ca5ef297847ffa5d58239dc authorAgentM <agentm@themactionfaction.com> dateMon 20 May 2019, 00:31 (7 years ago) parentd971454
1 file changed+4−6
src/lib/ProjectM36/AtomType.hs+4−6
src/lib/ProjectM36/AtomType.hs+4−6
@@ -142,7 +142,7 @@ resolveAttributeExprTypeVars (AttributeAndTypeNameExpr _ tCons _) aType tConsMap
142142validateTypeConstructorDef :: TypeConstructorDef -> [DataConstructorDef] -> TypeConstructorMapping -> Either RelationalError ()
143143validateTypeConstructorDef tConsDef dConsList tConsMap = do
144144 let duplicateDConsNames = dupes (L.sort (map DCD.name dConsList))
145− when (length duplicateDConsNames > 0) (Left (someErrors (map DataConstructorNameInUseError duplicateDConsNames)))
145+ unless (null duplicateDConsNames) (Left (someErrors (map DataConstructorNameInUseError duplicateDConsNames)))
146146 let leftSideVars = S.fromList (TCD.typeVars tConsDef)
147147 rightSideVars = S.unions (map DCD.typeVars dConsList)
148148 varsDiff = S.difference leftSideVars rightSideVars
@@ -151,10 +151,10 @@ validateTypeConstructorDef tConsDef dConsList tConsMap = do
151151
152152--check that the data constructor names are not in use (recursively)
153153validateDataConstructorDef :: DataConstructorDef -> TypeConstructorDef -> TypeConstructorMapping -> Either RelationalError ()
154−validateDataConstructorDef (DataConstructorDef dConsName dConsDefArgs) tConsDef tConsMap = do
154+validateDataConstructorDef (DataConstructorDef dConsName dConsDefArgs) tConsDef tConsMap =
155155 case findDataConstructor dConsName tConsMap of
156156 Just _ -> Left (DataConstructorNameInUseError dConsName)
157− Nothing -> do
157+ Nothing ->
158158 mapM_ (\arg -> validateDataConstructorDefArg arg tConsDef tConsMap) dConsDefArgs
159159
160160
@@ -162,14 +162,12 @@ validateDataConstructorDefArg :: DataConstructorDefArg -> TypeConstructorDef ->
162162validateDataConstructorDefArg (DataConstructorDefTypeConstructorArg (PrimitiveTypeConstructor _ _)) _ _ = Right ()
163163validateDataConstructorDefArg (DataConstructorDefTypeConstructorArg (TypeVariable _)) _ _ = Right ()
164164validateDataConstructorDefArg (DataConstructorDefTypeConstructorArg tCons) tConsDef tConsMap = case findTypeConstructor (TC.name tCons) tConsMap of
165− Nothing -> do
165+ Nothing ->
166166 when (TC.name tCons /= TCD.name tConsDef) (Left (NoSuchTypeConstructorName (TC.name tCons))) --allows for recursively-defined types
167− pure ()
168167 Just (ADTypeConstructorDef _ tConsArgs, _) -> do --validate that the argument count matches- type matching can occur later
169168 let existingCount = length tConsArgs
170169 newCount = length (TC.arguments tCons)
171170 when (newCount /= existingCount) (Left (ConstructedAtomArgumentCountMismatchError existingCount newCount))
172− pure ()
173171 Just (PrimitiveTypeConstructorDef _ _, _) -> pure ()
174172validateDataConstructorDefArg (DataConstructorDefTypeVarNameArg _) _ _ = Right ()
175173