atlas-cardano-0.6.2: Application backend for Plutus smart contracts on Cardano
Copyright(c) 2023 GYELD GMBH
LicenseApache 2.0
Maintainer[email protected]
Stabilitydevelop
Safe HaskellSafe-Inferred
LanguageGHC2021

GeniusYield.Types.PlutusVersion

Description

 
Synopsis

Plutus version

data PlutusVersion #

Constructors

PlutusV1 
PlutusV2 
PlutusV3 

Instances

Instances details
Show PlutusVersion # 
Instance details

Defined in GeniusYield.Types.PlutusVersion

Eq PlutusVersion # 
Instance details

Defined in GeniusYield.Types.PlutusVersion

Ord PlutusVersion # 
Instance details

Defined in GeniusYield.Types.PlutusVersion

GCompare SingPlutusVersion # 
Instance details

Defined in GeniusYield.Types.PlutusVersion

Methods

gcompare ∷ ∀ (a ∷ k) (b ∷ k). SingPlutusVersion a → SingPlutusVersion b → GOrdering a b #

GCompare GYScript # 
Instance details

Defined in GeniusYield.Types.Script

Methods

gcompare ∷ ∀ (a ∷ k) (b ∷ k). GYScript a → GYScript b → GOrdering a b #

GEq SingPlutusVersion # 
Instance details

Defined in GeniusYield.Types.PlutusVersion

Methods

geq ∷ ∀ (a ∷ k) (b ∷ k). SingPlutusVersion a → SingPlutusVersion b → Maybe (a :~: b) #

GEq GYScript # 
Instance details

Defined in GeniusYield.Types.Script

Methods

geq ∷ ∀ (a ∷ k) (b ∷ k). GYScript a → GYScript b → Maybe (a :~: b) #

GShow GYScript # 
Instance details

Defined in GeniusYield.Types.Script

Methods

gshowsPrec ∷ ∀ (a ∷ k). IntGYScript a → ShowS #

data SingPlutusVersion (v ∷ PlutusVersion) where #

Instances

Instances details
GCompare SingPlutusVersion # 
Instance details

Defined in GeniusYield.Types.PlutusVersion

Methods

gcompare ∷ ∀ (a ∷ k) (b ∷ k). SingPlutusVersion a → SingPlutusVersion b → GOrdering a b #

GEq SingPlutusVersion # 
Instance details

Defined in GeniusYield.Types.PlutusVersion

Methods

geq ∷ ∀ (a ∷ k) (b ∷ k). SingPlutusVersion a → SingPlutusVersion b → Maybe (a :~: b) #

type VersionIsGreaterOrEqual (v ∷ PlutusVersion) (u ∷ PlutusVersion) = GreaterOrEqual (v `CmpPlutusVersion` u) ~ 'True #

Constraint that v >= u.

If transaction is making use of V2 features (such as reference inputs) then as these cannot be represented in script context of V1 scripts, we need to ensure that the involved script version is at least V2. Likewise for other versions.

type VersionIsGreater (v ∷ PlutusVersion) (u ∷ PlutusVersion) = (v `CmpPlutusVersion` u) ~ 'GT #

Constraint that v > u.