free-foil-0.4.0: Efficient Type-Safe Capture-Avoiding Substitution for Free (Scoped Monads)
Safe HaskellNone
LanguageHaskell2010

Control.Monad.Foil.TH.MkToFoil

Synopsis

Documentation

mkToFoil Source #

Arguments

:: Name

Type name for raw terms.

-> Name

Type name for raw variable identifiers.

-> Name

Type name for raw scoped terms.

-> Name

Type name for raw patterns.

-> Q [Dec] 

Generate conversion functions from raw to scope-safe representation.

Since: 0.0.1

mkExtendScopeFoilPattern Source #

Arguments

:: Name

Type name for raw variable identifiers.

-> Name

Type name for raw patterns.

-> Q [Dec] 

Generate a function to extend scope with variables from a given pattern.

Since: 0.0.1

mkWithRefreshedFoilPattern Source #

Arguments

:: Name

Type name for raw variable identifiers.

-> Name

Type name for raw patterns.

-> Q [Dec] 

Generate a function to extend scope with variables from a given pattern.

Since: 0.0.1

mkToFoilTerm Source #

Arguments

:: Name

Type name for raw terms.

-> Name

Type name for raw variable identifiers.

-> Name

Type name for raw scoped terms.

-> Name

Type name for raw patterns.

-> Q [Dec] 

Generate a conversion function from raw terms to scope-safe terms.

Since: 0.0.1

mkToFoilPattern Source #

Arguments

:: Name

Type name for raw variable identifiers.

-> Name

Type name for raw patterns.

-> Q [Dec] 

Generate a conversion function from raw terms to scope-safe terms.

Since: 0.1.0