CurryInfo: property-prover-2.0.0 / TransState.setNameOfVars

definition:
setNameOfVars :: QName -> [Int] -> TransStateM ()
setNameOfVars name is = do
  st <- get
  let funcindex = maybe 1 ((+1) . third . fromJust)
                  $ find (maybe False ((== name) . fst3))
                  $ map third $ varTypes st
      vartypes' =
        map (\(i,t,s) -> if i `elem` is
              then (i, t,
                     Just (name, 1 + (fromJust $ elemIndex i is), funcindex))
              else (i,t,s))
            (varTypes st)
  put $ st { varTypes = vartypes' }
 where
  fst3  (x,_,_) = x
  third (_,_,x) = x
demand:
no demanded arguments
deterministic:
deterministic operation
documentation:
-- Sets the function name associated with a variable to the given name for the
-- variables with the given indices.
failfree:
(_, _)
indeterministic:
referentially transparent operation
infix:
no fixity defined
iotype:
{(_,_) |-> _}
name:
setNameOfVars
precedence:
no precedence defined
result-values:
_
signature:
(String, String) -> [Prelude.Int]
-> Control.Monad.Trans.State.StateT TransState (Control.Monad.Trans.State.StateT VerifierState.VState Prelude.IO) ()
solution-complete:
operation might suspend on free variables
terminating:
possibly non-terminating
totally-defined:
reducible on all ground data terms