plutus-use-cases-0.1.0.0: Collection of smart contracts to develop the plutus/wallet interface
Safe HaskellNone
LanguageHaskell2010

Plutus.Contracts.Prism.StateMachine

Description

State machine that manages credential tokens

Synopsis

Documentation

data IDState Source #

Constructors

Active

The credential is active and can be used in transactions

Revoked

The credential has been revoked and can't be used anymore.

Instances

Instances details
Eq IDState Source # 
Instance details

Defined in Plutus.Contracts.Prism.StateMachine

Show IDState Source # 
Instance details

Defined in Plutus.Contracts.Prism.StateMachine

Generic IDState Source # 
Instance details

Defined in Plutus.Contracts.Prism.StateMachine

Associated Types

type Rep IDState :: Type -> Type Source #

ToJSON IDState Source # 
Instance details

Defined in Plutus.Contracts.Prism.StateMachine

FromJSON IDState Source # 
Instance details

Defined in Plutus.Contracts.Prism.StateMachine

UnsafeFromData IDState Source # 
Instance details

Defined in Plutus.Contracts.Prism.StateMachine

FromData IDState Source # 
Instance details

Defined in Plutus.Contracts.Prism.StateMachine

ToData IDState Source # 
Instance details

Defined in Plutus.Contracts.Prism.StateMachine

Lift DefaultUni IDState Source # 
Instance details

Defined in Plutus.Contracts.Prism.StateMachine

Typeable DefaultUni IDState Source # 
Instance details

Defined in Plutus.Contracts.Prism.StateMachine

type Rep IDState Source # 
Instance details

Defined in Plutus.Contracts.Prism.StateMachine

type Rep IDState = D1 ('MetaData "IDState" "Plutus.Contracts.Prism.StateMachine" "plutus-use-cases-0.1.0.0-sCb7ThsvWbFT6VPXrOzPF" 'False) (C1 ('MetaCons "Active" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Revoked" 'PrefixI 'False) (U1 :: Type -> Type))

data IDAction Source #

Constructors

PresentCredential

Present the credential in a transaction

RevokeCredential

Revoke the credential

Instances

Instances details
Eq IDAction Source # 
Instance details

Defined in Plutus.Contracts.Prism.StateMachine

Show IDAction Source # 
Instance details

Defined in Plutus.Contracts.Prism.StateMachine

Generic IDAction Source # 
Instance details

Defined in Plutus.Contracts.Prism.StateMachine

Associated Types

type Rep IDAction :: Type -> Type Source #

ToJSON IDAction Source # 
Instance details

Defined in Plutus.Contracts.Prism.StateMachine

FromJSON IDAction Source # 
Instance details

Defined in Plutus.Contracts.Prism.StateMachine

UnsafeFromData IDAction Source # 
Instance details

Defined in Plutus.Contracts.Prism.StateMachine

FromData IDAction Source # 
Instance details

Defined in Plutus.Contracts.Prism.StateMachine

ToData IDAction Source # 
Instance details

Defined in Plutus.Contracts.Prism.StateMachine

Lift DefaultUni IDAction Source # 
Instance details

Defined in Plutus.Contracts.Prism.StateMachine

Typeable DefaultUni IDAction Source # 
Instance details

Defined in Plutus.Contracts.Prism.StateMachine

type Rep IDAction Source # 
Instance details

Defined in Plutus.Contracts.Prism.StateMachine

type Rep IDAction = D1 ('MetaData "IDAction" "Plutus.Contracts.Prism.StateMachine" "plutus-use-cases-0.1.0.0-sCb7ThsvWbFT6VPXrOzPF" 'False) (C1 ('MetaCons "PresentCredential" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "RevokeCredential" 'PrefixI 'False) (U1 :: Type -> Type))

data UserCredential Source #

A Credential issued to a user (public key address)

Constructors

UserCredential 

Fields

Instances

Instances details
Eq UserCredential Source # 
Instance details

Defined in Plutus.Contracts.Prism.StateMachine

Show UserCredential Source # 
Instance details

Defined in Plutus.Contracts.Prism.StateMachine

Generic UserCredential Source # 
Instance details

Defined in Plutus.Contracts.Prism.StateMachine

Associated Types

type Rep UserCredential :: Type -> Type Source #

Hashable UserCredential Source # 
Instance details

Defined in Plutus.Contracts.Prism.StateMachine

ToJSON UserCredential Source # 
Instance details

Defined in Plutus.Contracts.Prism.StateMachine

FromJSON UserCredential Source # 
Instance details

Defined in Plutus.Contracts.Prism.StateMachine

Lift DefaultUni UserCredential Source # 
Instance details

Defined in Plutus.Contracts.Prism.StateMachine

Typeable DefaultUni UserCredential Source # 
Instance details

Defined in Plutus.Contracts.Prism.StateMachine

type Rep UserCredential Source # 
Instance details

Defined in Plutus.Contracts.Prism.StateMachine

type Rep UserCredential = D1 ('MetaData "UserCredential" "Plutus.Contracts.Prism.StateMachine" "plutus-use-cases-0.1.0.0-sCb7ThsvWbFT6VPXrOzPF" 'False) (C1 ('MetaCons "UserCredential" 'PrefixI 'True) (S1 ('MetaSel ('Just "ucAddress") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 PaymentPubKeyHash) :*: (S1 ('MetaSel ('Just "ucCredential") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Credential) :*: S1 ('MetaSel ('Just "ucToken") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Value))))