plutus-ledger-api-1.70.0.0: Interface to the Plutus ledger for the Cardano ledger.
Safe HaskellSafe-Inferred
LanguageHaskell2010

PlutusCore.Executable.AstIO

Description

Reading and writing ASTs with various name types in flat format.

Synopsis

Documentation

loadPlcASTfromFlat ∷ Flat a ⇒ AstNameType → Input → IO (PlcProg a) Source #

Read and deserialise a Flat-encoded PIR/PLC AST

loadUplcASTfromFlat ∷ Flat ann ⇒ AstNameType → Input → IO (UplcProg ann) Source #

Read and deserialise a Flat-encoded UPLC AST

fromNamedDeBruijnUPLC ∷ UplcProgNDB ann → UplcProg ann Source #

Convert an untyped program with named de Bruijn indices to one with textual names.

toDeBruijnTermPLC ∷ PlcTerm ann → PlcTermDB ann Source #

Convert a typed term to one where the name type is de Bruijn indices.

toDeBruijnTermUPLC ∷ UplcTerm ann → UplcTermDB ann Source #

Convert an untyped term to one where the name type is de Bruijn indices.

toDeBruijnUPLC ∷ UplcProg ann → UplcProgDB ann Source #

Convert an untyped program to one where the name type is de Bruijn indices.

toDeBruijnTypePLC ∷ PlcType ann → PlcTypeDB ann Source #

Convert a type to one where the tyname type is de Bruijn indices.

toNamedDeBruijnUPLC ∷ UplcProg ann → UplcProgNDB ann Source #

Convert an untyped program to one where the name type is textual names with de Bruijn indices.