CurryInfo: call-analysis-3.2.0 / Analysis.showSemInt

definition: Info
 
showSemInt :: ADom a -> SemInt a -> String
showSemInt adom eqs =
  let semIntLine = "{" ++ intercalate ", " (map showEq eqs) ++ "}"
   in show (length eqs) ++ " semantic equations:\n" ++
      if length semIntLine < 80
      then semIntLine
      else "{" ++ intercalate ",\n " (map showEq eqs) ++ "}"
 where
  showe = adomShow adom

  showEq (Eq f args r) =
    f ++ (if null args
          then []
          else '(' : intercalate "," (map showe args) ++ ")")
      ++ " = " ++ showe r
demand: Info
 no demanded arguments
deterministic: Info
 deterministic operation
documentation: Info
 
show a semantic interpretation w.r.t. an abstract domain
(containing a show function for semantic elements)
failfree: Info
 (_, _)
indeterministic: Info
 referentially transparent operation
infix: Info
 no fixity defined
iotype: Info
 {(_,_) |-> _}
name: Info
 showSemInt
precedence: Info
 no precedence defined
result-values: Info
 _
signature: Info
 ADom a -> [SemEq a] -> String
solution-complete: Info
 operation might suspend on free variables
terminating: Info
 possibly non-terminating
totally-defined: Info
 possibly non-reducible on same data term