plutus-core-1.36.0.0: Language library for Plutus Core
Safe HaskellSafe-Inferred
LanguageHaskell2010

UntypedPlutusCore.Analysis.Definitions

Description

Definition analysis for untyped Plutus Core. This just adapts term-related code from PlutusCore.Analysis.Definitions; we just re-use the typed machinery to do the hard work here.

Synopsis

Documentation

termDefs ∷ (Ord ann, HasUnique name TermUnique, MonadState (UniqueInfos ann) m, MonadWriter [UniqueError ann] m) ⇒ Term name uni fun ann → m () Source #

Given a UPLC term, add all of its term definitions and usages, including its subterms, to a global map.

runTermDefs ∷ (Ord ann, HasUnique name TermUnique, Monad m) ⇒ Term name uni fun ann → m (UniqueInfos ann, [UniqueError ann]) Source #