plutarch-1.10.1
Safe HaskellSafe-Inferred
LanguageGHC2021

Plutarch.Pair

Synopsis

Documentation

data PPair (a :: S -> Type) (b :: S -> Type) (s :: S) Source #

Plutus encoding of Pairs.

Note: This is represented differently than BuiltinPair. It is SoP encoded.

Constructors

PPair (Term s a) (Term s b) 

Instances

Instances details
(PEq a, PEq b) => PEq (PPair a b) Source #

Since: 1.10.0

Instance details

Defined in Plutarch.Pair

Methods

(#==) :: forall (s :: S). Term s (PPair a b) -> Term s (PPair a b) -> Term s PBool Source #

PlutusType (PPair a b) Source # 
Instance details

Defined in Plutarch.Pair

Associated Types

type PInner (PPair a b) :: PType Source #

type PCovariant' (PPair a b) Source #

type PContravariant' (PPair a b) Source #

type PVariant' (PPair a b) Source #

Methods

pcon' :: forall (s :: S). PPair a b s -> Term s (PInner (PPair a b)) Source #

pmatch' :: forall (s :: S) (b0 :: PType). Term s (PInner (PPair a b)) -> (PPair a b s -> Term s b0) -> Term s b0 Source #

(PMonoid a, PMonoid b) => PMonoid (PPair a b) Source #

Since: 1.10.0

Instance details

Defined in Plutarch.Pair

Methods

pmempty :: forall (s :: S). Term s (PPair a b) Source #

pmtimes :: forall (s :: S). Term s PNatural -> Term s (PPair a b) -> Term s (PPair a b) Source #

(PSemigroup a, PSemigroup b) => PSemigroup (PPair a b) Source #

Since: 1.10.0

Instance details

Defined in Plutarch.Pair

Methods

(#<>) :: forall (s :: S). Term s (PPair a b) -> Term s (PPair a b) -> Term s (PPair a b) Source #

pstimes :: forall (s :: S). Term s PPositive -> Term s (PPair a b) -> Term s (PPair a b) Source #

(PShow a, PShow b) => PShow (PPair a b) Source #

Since: 1.10.0

Instance details

Defined in Plutarch.Pair

Methods

pshow' :: forall (s :: S). Bool -> Term s (PPair a b) -> Term s PString Source #

Generic (PPair a b s) Source # 
Instance details

Defined in Plutarch.Pair

Associated Types

type Rep (PPair a b s) :: Type -> Type Source #

Methods

from :: PPair a b s -> Rep (PPair a b s) x Source #

to :: Rep (PPair a b s) x -> PPair a b s Source #

Generic (PPair a b s) Source # 
Instance details

Defined in Plutarch.Pair

Associated Types

type Code (PPair a b s) :: [[Type]]

Methods

from :: PPair a b s -> Rep (PPair a b s)

to :: Rep (PPair a b s) -> PPair a b s

type PContravariant' (PPair a b) Source # 
Instance details

Defined in Plutarch.Pair

type PCovariant' (PPair a b) Source # 
Instance details

Defined in Plutarch.Pair

type PInner (PPair a b) Source #

Since: 1.10.0

Instance details

Defined in Plutarch.Pair

type PVariant' (PPair a b) Source # 
Instance details

Defined in Plutarch.Pair

type Rep (PPair a b s) Source #

Since: 1.10.0

Instance details

Defined in Plutarch.Pair

type Rep (PPair a b s) = D1 ('MetaData "PPair" "Plutarch.Pair" "plutarch-1.10.1-LPGZaAWjybFFuyJX8dF1yJ" 'False) (C1 ('MetaCons "PPair" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Term s a)) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Term s b))))
type Code (PPair a b s) Source #

Since: 1.10.0

Instance details

Defined in Plutarch.Pair

type Code (PPair a b s) = GCode (PPair a b s)