Simplify checkSetAssignment
This commit is contained in:
parent
df4928f4e3
commit
cfa2a663af
|
@ -661,17 +661,12 @@ prop_checkSetAssignment5 = verifyNot checkSetAssignment "set 'a=5'"
|
||||||
prop_checkSetAssignment6 = verifyNot checkSetAssignment "set"
|
prop_checkSetAssignment6 = verifyNot checkSetAssignment "set"
|
||||||
checkSetAssignment = CommandCheck (Exactly "set") (f . arguments)
|
checkSetAssignment = CommandCheck (Exactly "set") (f . arguments)
|
||||||
where
|
where
|
||||||
f (var:value:rest) =
|
f (var:rest)
|
||||||
let str = literal var in
|
| (not (null rest) && isVariableName str) || isAssignment str =
|
||||||
when (isVariableName str || isAssignment str) $
|
warn (getId var) 2121 "To assign a variable, use just 'var=value', no 'set ..'."
|
||||||
msg (getId var)
|
where str = literal var
|
||||||
f (var:_) =
|
|
||||||
when (isAssignment $ literal var) $
|
|
||||||
msg (getId var)
|
|
||||||
f _ = return ()
|
f _ = return ()
|
||||||
|
|
||||||
msg id = warn id 2121 "To assign a variable, use just 'var=value', no 'set ..'."
|
|
||||||
|
|
||||||
isAssignment str = '=' `elem` str
|
isAssignment str = '=' `elem` str
|
||||||
literal (T_NormalWord _ l) = concatMap literal l
|
literal (T_NormalWord _ l) = concatMap literal l
|
||||||
literal (T_Literal _ str) = str
|
literal (T_Literal _ str) = str
|
||||||
|
|
Loading…
Reference in New Issue