CurryInfo: currypp-3.2.0 / CPP.ICode.Parser.SQL.Consistency.checkConsistency

definition: Info
 
checkConsistency :: PM [Statement] -> ParserInfo -> Pos -> PM [Statement]
checkConsistency (PM (WM (Errors err) ws)) _ _ = PM $ WM (throwPR err) ws
checkConsistency (PM (WM (OK ast) ws)) pinfo p =
  let relMap = getRelations pinfo
      colMap = getAttrList pinfo
      nullMap = getNullables pinfo
      (PM (WM resPR warns)) =
           sequencePM (map (checkStatement p relMap colMap nullMap) ast)
   in (PM $ WM resPR (ws ++ warns))
demand: Info
 argument 1
deterministic: Info
 deterministic operation
documentation: Info
 
Invokes the consistency check if a valid AST is given,
does nothing otherwise.
failfree: Info
 <FAILING>
indeterministic: Info
 referentially transparent operation
infix: Info
 no fixity defined
iotype: Info
 {({PM},_,_) |-> _}
name: Info
 checkConsistency
precedence: Info
 no precedence defined
result-values: Info
 _
signature: Info
 CPP.ICode.ParseMonad.PM [CPP.ICode.Parser.SQL.AST.Statement]
-> CPP.ICode.Parser.SQL.ParserInfoType.ParserInfo -> CPP.ICode.ParsePos.Pos
-> CPP.ICode.ParseMonad.PM [CPP.ICode.Parser.SQL.AST.Statement]
solution-complete: Info
 operation might suspend on free variables
terminating: Info
 possibly non-terminating
totally-defined: Info
 possibly non-reducible on same data term