Module CurryDoc.CDoc

Functions to generate documentation in "CDoc" format.

Author: Sandra Dylus

Version: December 2024

Summary of exported operations:

generateCDoc :: String -> String -> [(SourceLine,String)] -> AnaInfo -> IO String  Non-deterministic 
removeForall :: TypeExpr -> TypeExpr  Deterministic 
funcComment :: String -> [(SourceLine,String)] -> String  Deterministic 
dataComment :: String -> [(SourceLine,String)] -> String  Deterministic 
flexRigid :: Rule -> FlexRigidResult  Deterministic 
author :: [(String,String)] -> String  Deterministic 
consSignature :: ConsDecl -> ((String,String),[TypeExpr])  Deterministic 
newconsSignature :: NewConsDecl -> ((String,String),[TypeExpr])  Deterministic 

Exported datatypes:


CurryInfo

The information about a Curry module contains

  • the module information
  • the corresponding functions
  • the corresponding data and type declaration

Constructors:


ModuleInfo

The basic information about some module contains

  • the name
  • the author
  • the description

Constructors:

  • ModuleInfo :: String -> String -> String -> ModuleInfo

FunctionInfo

The information about functions defined in a Curry module contains

  • the name
  • the signature
  • the corresponding module
  • the description
  • True if property ist defined non-deterministically
  • the flex/rigid status

Constructors:


TypeInfo

The information about types defined in a Curry module contains

  • the name
  • the signature (true indicates a type synonym, false a data type)
  • the corresponding module
  • the description

Constructors:


Exported operations:

generateCDoc :: String -> String -> [(SourceLine,String)] -> AnaInfo -> IO String  Non-deterministic 

funcComment :: String -> [(SourceLine,String)] -> String  Deterministic 

dataComment :: String -> [(SourceLine,String)] -> String  Deterministic 

author :: [(String,String)] -> String  Deterministic 

consSignature :: ConsDecl -> ((String,String),[TypeExpr])  Deterministic 

newconsSignature :: NewConsDecl -> ((String,String),[TypeExpr])  Deterministic