curry-frontend-1.0.4: Compile the functional logic language Curry to several intermediate formats

Copyright(c) 2002 - 2004 Wolfgang Lux
2005 Martin Engelke
2007 Sebastian Fischer
2011 - 2013 Björn Peemöller
2016 - 2017 Finn Teegen
LicenseBSD-3-clause
Maintainerbjp@informatik.uni-kiel.de
Stabilityexperimental
Portabilityportable
Safe HaskellSafe
LanguageHaskell2010

CurryDeps

Description

This module implements the functions to compute the dependency information between Curry modules. This is used to create Makefile dependencies and to update programs composed of multiple modules.

Synopsis

Documentation

data Source Source #

Different types of source files

Constructors

Source FilePath [ModulePragma] [ModuleIdent]

A source file with pragmas and module imports

Interface FilePath

An interface file

Unknown

An unknown file

Instances
Eq Source Source # 
Instance details

Defined in CurryDeps

Methods

(==) :: Source -> Source -> Bool #

(/=) :: Source -> Source -> Bool #

Show Source Source # 
Instance details

Defined in CurryDeps

flatDeps :: Options -> FilePath -> CYIO [(ModuleIdent, Source)] Source #

Retrieve the dependencies of a source file in topological order and possible errors during flattering

deps :: Options -> SourceEnv -> FilePath -> CYIO SourceEnv Source #

Retrieve the dependencies of a source file as a SourceEnv

flattenDeps :: SourceEnv -> ([(ModuleIdent, Source)], [Message]) Source #

sourceDeps :: Options -> SourceEnv -> FilePath -> CYIO SourceEnv Source #

Retrieve the dependencies of a given source file

moduleDeps :: Options -> SourceEnv -> FilePath -> Module a -> CYIO SourceEnv Source #

Retrieve the dependencies of a given module