initial commit

This commit is contained in:
Emily Martins 2022-01-13 00:06:37 +01:00
commit ea96690e6a
12 changed files with 1790 additions and 0 deletions

View file

@ -0,0 +1,32 @@
module Agora.AuthorityToken (authorityTokenPolicy, AuthorityToken (..)) where
--------------------------------------------------------------------------------
import Prelude
--------------------------------------------------------------------------------
import Plutus.V1.Ledger.Value (AssetClass)
--------------------------------------------------------------------------------
import Plutarch
import Plutarch.Bool
import Plutarch.Builtin
import Plutarch.ScriptContext
import Plutarch.Trace
import Plutarch.Unit (PUnit (..))
--------------------------------------------------------------------------------
data AuthorityToken = AuthorityToken
{ -- | Token that must move in order for minting this to be valid.
authorityAssetClass :: AssetClass
}
--------------------------------------------------------------------------------
authorityTokenPolicy :: AuthorityToken -> Term s (PData :--> PData :--> PScriptContext :--> PUnit)
authorityTokenPolicy _params =
plam $ \_datum _redeemer _ctx ->
pif (pcon PTrue) (pcon PUnit) (ptraceError "Constraint failed")