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

PlutusCore.Eq

Description

An internal module that defines functions for deciding equality of values of data types that encode things with binders.

Synopsis

Documentation

newtype LR a Source #

From left to right.

Constructors

LR 

Fields

Instances

Instances details
Generic (LR a) Source # 
Instance details

Defined in PlutusCore.Eq

Associated Types

type Rep (LR a) ∷ TypeType Source #

Methods

fromLR a → Rep (LR a) x Source #

toRep (LR a) x → LR a Source #

Wrapped (LR a) Source # 
Instance details

Defined in PlutusCore.Eq

Associated Types

type Unwrapped (LR a)

Methods

_Wrapped' ∷ Iso' (LR a) (Unwrapped (LR a))

HasUnique name unique ⇒ HasUnique (LR name) (LR unique) Source # 
Instance details

Defined in PlutusCore.Eq

Methods

uniqueLens' (LR name) (LR unique) Source #

type Rep (LR a) Source # 
Instance details

Defined in PlutusCore.Eq

type Rep (LR a) = D1 ('MetaData "LR" "PlutusCore.Eq" "plutus-core-1.34.0.0-inplace" 'True) (C1 ('MetaCons "LR" 'PrefixI 'True) (S1 ('MetaSel ('Just "unLR") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)))
type Unwrapped (LR a) Source # 
Instance details

Defined in PlutusCore.Eq

type Unwrapped (LR a) = GUnwrapped (Rep (LR a))

newtype RL a Source #

From right to left.

Constructors

RL 

Fields

Instances

Instances details
Generic (RL a) Source # 
Instance details

Defined in PlutusCore.Eq

Associated Types

type Rep (RL a) ∷ TypeType Source #

Methods

fromRL a → Rep (RL a) x Source #

toRep (RL a) x → RL a Source #

Wrapped (RL a) Source # 
Instance details

Defined in PlutusCore.Eq

Associated Types

type Unwrapped (RL a)

Methods

_Wrapped' ∷ Iso' (RL a) (Unwrapped (RL a))

HasUnique name unique ⇒ HasUnique (RL name) (RL unique) Source # 
Instance details

Defined in PlutusCore.Eq

Methods

uniqueLens' (RL name) (RL unique) Source #

type Rep (RL a) Source # 
Instance details

Defined in PlutusCore.Eq

type Rep (RL a) = D1 ('MetaData "RL" "PlutusCore.Eq" "plutus-core-1.34.0.0-inplace" 'True) (C1 ('MetaCons "RL" 'PrefixI 'True) (S1 ('MetaSel ('Just "unRL") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)))
type Unwrapped (RL a) Source # 
Instance details

Defined in PlutusCore.Eq

type Unwrapped (RL a) = GUnwrapped (Rep (RL a))

type EqRename ren = RenameT (Bilateral ren) Maybe () Source #

The type of a runnable equality check. Maybe () is isomorphic to Bool and we use it instead of Bool, because this unlocks the convenient and readable do-notation and allows for automatic short-circuiting, which would be tedious with Rename (Bilateral ren) Bool.

runEqRenameMonoid ren ⇒ EqRename ren → Bool Source #

Run an EqRename computation.

withTwinBindings ∷ (HasRenaming ren unique, HasUnique name unique, Monad m) ⇒ name → name → RenameT (Bilateral ren) m c → RenameT (Bilateral ren) m c Source #

Record that two names map to each other.

eqNameM ∷ (HasRenaming ren unique, HasUnique name unique, Eq unique) ⇒ name → name → EqRename ren Source #

Check equality of two names.

eqMEq a ⇒ a → a → EqRename ren Source #

Check equality of things having an Eq instance.