Use Liqwid-Labs/plutarch

- Removed `Utils.Value` -- not being used/better is provided with
  liqwid-plutarch-extra
- uses `Liqwid-Labs/plutarch`
- uses `Liqwid-Labs/plutarch-numeric`
- uses `Liqwid-Labs/plutarch-safemoney`
- uses `Liqwid-Labs/liqwid-plutarch-extra`
This commit is contained in:
Seungheon Oh 2022-05-25 23:31:02 -05:00
parent b28bf9f59e
commit 7a0f9e9a66
25 changed files with 6520 additions and 407 deletions

View file

@ -110,21 +110,23 @@ import Plutarch.Api.V1 (
mkValidator,
validatorHash,
)
import Plutarch.Api.V1.Extra (
import Plutarch.Api.V1.AssetClass (
passetClass,
passetClassValueOf,
)
import Plutarch.Map.Extra (
import Plutarch.Extra.Map (
pkeys,
plookup,
plookup',
)
import Plutarch.Extra.Comonad ( pextract)
import Plutarch.SafeMoney (
PDiscrete,
puntag,
pvalueDiscrete',
)
import Plutarch.TryFrom (ptryFrom)
import Plutarch.TryFrom ()
import Plutarch.SafeMoney (PDiscrete (..))
import Plutarch.Extra.TermCont (pmatchC)
--------------------------------------------------------------------------------
@ -629,8 +631,9 @@ governorValidator gov =
winner <- tclet $ mustBePJust # "No winning outcome" # maybeWinner
PDiscrete minimumVotes' <- pmatchC $ pfromData $ pfield @"execute" # proposalInputDatumF.thresholds
let highestVote = pfromData $ psndBuiltin # winner
minimumVotes = puntag $ pfromData $ pfield @"execute" # proposalInputDatumF.thresholds
minimumVotes = pextract # minimumVotes'
tcassert "Higgest vote doesn't meet the minimum requirement" $ minimumVotes #<= highestVote