plutus-tx
Safe HaskellNone
LanguageHaskell2010

PlutusTx.Blueprint.Definition.Derive

Synopsis

Documentation

deriveDefinitions :: forall (ts :: [Type]). DefinitionsFor (UnrollAll ts) => Definitions (UnrollAll ts) Source #

Derive a Definitions value for a list of types.

definitionRef :: forall t (ts :: [Type]). HasBlueprintDefinition t => Schema ts Source #

Construct a Schema that is a reference to a schema definition.

type DefinitionsFor (ts :: [Type]) = DefinitionsFor' ts ts Source #

This class and its two instances are used internally to derive Definitions for a given list of types.

definitionsFor :: forall (ts :: [Type]). DefinitionsFor ts => Definitions ts Source #

class DefinitionsFor' (referencedTypes :: [Type]) (acc :: k) where Source #

Methods

definitionsFor' :: Definitions referencedTypes Source #

Instances

Instances details
DefinitionsFor' referencedTypes ('[] :: [a]) Source # 
Instance details

Defined in PlutusTx.Blueprint.Definition.Derive

Methods

definitionsFor' :: Definitions referencedTypes Source #

(HasBlueprintDefinition t, HasBlueprintSchema t referencedTypes, DefinitionsFor' referencedTypes ts) => DefinitionsFor' referencedTypes (t ': ts :: [Type]) Source # 
Instance details

Defined in PlutusTx.Blueprint.Definition.Derive

Methods

definitionsFor' :: Definitions referencedTypes Source #