Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rebase verifies Compilation #6379

Merged
merged 190 commits into from
Aug 6, 2024
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
190 commits
Select commit Hold shift + click to select a range
7db7e37
Trace removal re-implemented as a IR rewrite rule (#5907)
Unisay Apr 17, 2024
d32bc7e
CIP-0057 Howto: exporting a Plutus contract blueprint (#5817)
Unisay Apr 18, 2024
3e00141
[Release] 1.26.0.0 (#5914)
ana-pantilie Apr 19, 2024
7707aab
A quick isabelle experiment. (#5913)
ramsay-t Apr 19, 2024
9d0a9cf
PLT-8171: Combine PIR, PLC, and UPLC into a single executable (#5699)
bezirg Apr 21, 2024
83fe75f
chore(deps): bump slackapi/slack-github-action from 1.25.0 to 1.26.0 …
dependabot[bot] Apr 22, 2024
2e2a7fb
Kwxm/plc spec/bitwise conversions (#5911)
Apr 22, 2024
bcce392
Use Int64 in CostModelParams (#5920)
zliu41 Apr 23, 2024
b97e8be
Change CMTooFewParamsError to a warning (#5912)
zliu41 Apr 23, 2024
3944e09
[Costing] Provide support for multiple 'CostModel's (#5851)
effectfully Apr 25, 2024
0567ef7
CaseOfCase kind mismatch error fix (#5923)
Unisay Apr 26, 2024
2748f90
Fix some Notes so they pass the check (#5930)
Apr 29, 2024
4a29380
Restore old cost model param names (#5932)
Apr 29, 2024
d64be66
Tidy up SimpleJSON.hs (#5936)
Apr 30, 2024
6912db2
chore: formatting (#5937)
Unisay Apr 30, 2024
d10d5df
1.27.0.0 (#5938)
zliu41 Apr 30, 2024
d319fe5
Do not build the plutus executable if GHC <9.6 (#5940)
zliu41 Apr 30, 2024
f1eae1c
Update CONTRIBUTING.adoc (#5950)
zliu41 May 3, 2024
619ddbc
Add 'Note [Table of all possible ledger's states w.r.t. cost model pa…
effectfully May 3, 2024
067e74f
Remove annoying error message (#5956)
May 4, 2024
ca60dad
Add plutus-tx-template Release Instructions and GH Workflow (#5952)
zeme-wana May 6, 2024
ef40c38
[StdLib] Strictify 'fix' (#5939)
effectfully May 6, 2024
16be7da
[PIR] Don't generate 'fixBy' if you don't need to (#5954)
effectfully May 6, 2024
34fa7c5
Chore: formatting, imports, pragmas. (#5965)
Unisay May 8, 2024
b6e82b6
CaseOfCase UPLC transformation tests. (#5960)
Unisay May 8, 2024
253004f
Avoid evaluating `nilCase` strictly in `matchList`, and rename the or…
zliu41 May 9, 2024
1df52aa
Improvements to plutus-metatheory site (#5959)
zeme-wana May 11, 2024
774616b
chore(deps): bump nixbuild/nix-quick-install-action from 27 to 28 (#5…
dependabot[bot] May 13, 2024
59d4b04
[Build] Remove the doctests runner of 'prettyprinter-configurable' (#…
effectfully May 14, 2024
6e3da00
Kwxm/mainnet script budgets (#5973)
May 14, 2024
5f207e5
Release 1.28.0.0 (#5975)
Unisay May 15, 2024
92d94ca
[PlutusTx] [Builtins] Split 'FromBuiltin' and 'ToBuiltin' (#5971)
effectfully May 15, 2024
d99ba33
Update README.md (#5997)
May 15, 2024
802cf4f
chore(deps): bump cachix/install-nix-action from 26 to 27 (#5999)
dependabot[bot] May 16, 2024
5ee2936
Script to prepare binary executables for uploading to the github rele…
Unisay May 17, 2024
0d8149c
Kwxm/mainnet script budgets 2 (#6057)
May 20, 2024
1529ef8
Add integerToByteString and byteStringToInteger to PlutusV2 at PV10 (…
zliu41 May 20, 2024
9326493
[Refactoring] Remove 'UnknownBuiltin' and 'UnknownBuiltinType' (#6064)
effectfully May 20, 2024
ef97537
Conditionally add 'triage' label to new issues (#6061)
zeme-wana May 21, 2024
0b670f7
Fix bug in add-triage-label.yml (#6067)
zeme-wana May 21, 2024
5eb57a5
chore(deps): bump benchmark-action/github-action-benchmark (#6058)
dependabot[bot] May 21, 2024
0ce328c
Add integerToByteString and byteStringToInteger to V2.ParamName (#6065)
zliu41 May 21, 2024
acdaeb2
Add PlutusTx Map backed by Data (#5927)
ana-pantilie May 21, 2024
794bf9d
Let nightly.yml accept hedgehog-tests input (#6062)
zeme-wana May 22, 2024
5771700
Remove obsolete defer-plugin-errors flag (#6080)
zeme-wana May 22, 2024
252b634
Add a Plutus Tx test utility package (#6086)
ana-pantilie May 23, 2024
6c6918c
[Errors] polish evaluation errors (#6043)
effectfully May 23, 2024
1afe001
[Test] Add do-notation support for 'TestNested' (#5948)
effectfully May 23, 2024
85cf1ed
Run nightly tests on plutus-benchmark (#6091)
zeme-wana May 24, 2024
d7a5c76
[Exe] Generalize 'withL' to 'withLangGeneral' (#5918)
effectfully May 29, 2024
00beff4
Kwxm/provisional conway cost model (#6087)
May 29, 2024
f63f3ca
Update issue templates (#6037)
zliu41 May 30, 2024
e675e65
Remove reference to benching.csv in plutus-core.cabal (#6149)
May 30, 2024
7b3fd3e
PlutusV3: Datum/Redeemer in ScriptContext, Datum Optional, Unified Sc…
zliu41 May 30, 2024
20e418e
Kwxm/costing/reduce CEK CPU step costs B (#6153)
May 30, 2024
cd20770
[Test] Dump UPLC for 'strictLetRec' (#5963)
effectfully May 30, 2024
7411e14
Use the most recent evaluation context for most of the benchmarks (#6…
May 30, 2024
0d26761
[Builtins] Polish handling of integral types (#6036)
effectfully May 31, 2024
f34e999
Tests for the `preserve-logging` flag. (#6162)
Unisay Jun 3, 2024
d34e4d3
Require PlutusV3 scripts to evaluate to BuiltinUnit (#6159)
zliu41 Jun 3, 2024
50c6cb0
Quadratic costing for integer division functions (#6161)
Jun 3, 2024
bbeb1a4
Fix V2's costModelParamsForTesting (#6166)
zliu41 Jun 3, 2024
c013014
Release 1.29.0.0 (#6170)
Jun 4, 2024
f601fb9
Update update-version.sh to match package names less greedily (#6174)
Jun 5, 2024
a2c6bc0
More error checking (#6179)
Jun 5, 2024
f1f2e9f
Reorganized Plutus user guide on the Docusaurus platform initial depl…
joseph-fajen Jun 5, 2024
88ad493
Initial version of new combined-haddock.yml workflow (#6182)
zeme-wana Jun 6, 2024
a43d8f9
[Builtins] Make 'BuiltinSuccess' the first constructor (#5885)
effectfully Jun 6, 2024
1848101
[PlutusLedgerApi] [Refactoring] Polish imports and exports (#6178)
effectfully Jun 6, 2024
3656505
Adding link to Haddock documentation to index.md (#6187)
joseph-fajen Jun 6, 2024
4d68254
removing outdated and incorrect content from the Plutus platform page…
joseph-fajen Jun 7, 2024
3f2e83b
Add `Data.Value` to `PlutusLedgerAPI` (#6143)
ana-pantilie Jun 7, 2024
c9b77f5
added the term Haddock where the public Plutus code libraries are men…
joseph-fajen Jun 7, 2024
be0aa25
Refactored Serialise/Flat-Via. Fixes #6083 (#6144)
bezirg Jun 8, 2024
37e681c
Add Redeemer to V3 ScriptContext Pretty instance (#6191)
ana-pantilie Jun 8, 2024
f6b9bdc
Logical operations (#5970)
kozross Jun 9, 2024
811f9fc
Combined Haddock Generation (#6146)
zeme-wana Jun 10, 2024
5894525
Run nightly tests on plutus-shared instead of plutus-benchmark (#6195)
zeme-wana Jun 10, 2024
a9a8315
Run combined-haddock.yml workflow on plutus-shared instead of plutus-…
zeme-wana Jun 10, 2024
7b70ab0
Fix combined_haddock.sh script (#6199)
zeme-wana Jun 10, 2024
8a0dacd
[Test] [Builtins] Add golden tests with unlifting errors (#6189)
effectfully Jun 10, 2024
c8450b5
Changed the term "Documentation" to "User guide" in the upper left ar…
joseph-fajen Jun 10, 2024
eed1426
Update Alert Message in longitudinal-benchmark.yml (#6201)
zeme-wana Jun 11, 2024
69eff87
[Test] Add missing bitwise builtins golden files (#6204)
effectfully Jun 11, 2024
6910d70
[Errors] Preserve operational unlifting errors (#6181)
effectfully Jun 12, 2024
56c90bf
Docs raise visibility code libraries (#6203)
joseph-fajen Jun 12, 2024
7d6dbc1
[Test] [Builtin] Polish 'MakeRead' tests (#6202)
effectfully Jun 12, 2024
294eaca
Remove AssocMap comparison instances (#6173)
ana-pantilie Jun 13, 2024
4ea8b3d
Update README.adoc (#6206)
joseph-fajen Jun 13, 2024
3b20c63
Remove PyF as it depends on GHC and causes depenecy conflicts downstr…
Unisay Jun 13, 2024
2ec9bf3
Bitwise operations (#6090)
kozross Jun 13, 2024
62ba600
Reduce coverage limits for signature verification tests (#6209)
Jun 13, 2024
72fa971
moved the Getting Started page to immediately follow the Introduction…
joseph-fajen Jun 14, 2024
9e3147c
Haskell Eq for AssocMap (#6213)
ana-pantilie Jun 14, 2024
5dffbd7
Shorten some filenames in the conformance tests (#6214)
Jun 14, 2024
3a36126
MK-5422 move getting started page fixing link (#6215)
joseph-fajen Jun 14, 2024
cc05625
[Evaluation] Move stuff under `enterComputeCek` (#6156)
effectfully Jun 14, 2024
bc8c3a7
Release 1.30.0.0 (#6216)
Unisay Jun 17, 2024
623c715
plutus-ir: fix redundant imports (#6218)
disassembler Jun 18, 2024
23edce1
Fix incorrect Note reference (#6217)
Jun 18, 2024
cc12361
Add documentation to `Data.Value` (#6220)
ana-pantilie Jun 18, 2024
a94bffd
[Builtins] Replace 'EvaluationResult' with 'BuiltinResult' (#5926)
effectfully Jun 18, 2024
7dbbd7f
New `./scripts/combined-haddock.sh` (#6205)
zeme-wana Jun 19, 2024
8c17ae4
Add workflow for publishing Agda Metatheory site (#6223)
zeme-wana Jun 20, 2024
1091562
Fixes to `metatheory-site.yml` workflow (#6228)
zeme-wana Jun 20, 2024
f9dfec2
Final changes to `metatheory-site.yml` workflow (#6229)
zeme-wana Jun 21, 2024
c33af07
Update RELEASE.adoc with instructions to delete unused branches and t…
zeme-wana Jun 21, 2024
151887d
Complete Migration from RDT to Docusaurus (#6227)
zeme-wana Jun 21, 2024
af578b5
Fix broken links in docusaurus docs (#6232)
zeme-wana Jun 21, 2024
8845e12
Add flake.nix for doc/docusaurus (#6233)
zeme-wana Jun 21, 2024
b9ad1dd
making a spelling correction on the doc/docusaurus README file (#6235)
joseph-fajen Jun 21, 2024
3ab37c5
[Builtins] Remove 'Emitter' and 'MonadEmitter' (#6224)
effectfully Jun 22, 2024
45ab436
Refactor GitHub Workflows (#6124)
zeme-wana Jun 24, 2024
84ad029
Fix & simplify SOP encoding example comment (#6231)
klntsky Jun 24, 2024
8f3c74f
Update github-action-benchmark version (#6238)
zeme-wana Jun 25, 2024
6357d23
Make it build with ghc 9.10 (#6079)
erikd Jun 25, 2024
6900c42
Update version of github-action-benchmark to v1.20.3 (#6240)
zeme-wana Jun 25, 2024
5579d34
Add workflows to check broken links and deploy papers to GH Pages (#6…
zeme-wana Jun 26, 2024
d3a42f2
Publish papers and specs on push to master only (#6246)
zeme-wana Jun 26, 2024
89a8aa1
Cabal project to compile docusaurus examples. (#6239)
Unisay Jun 26, 2024
dcd6f5d
Added cardano-constitution package (#6234)
bezirg Jun 26, 2024
b63c544
[Test] Turn off CSE for problematic tests (#6249)
effectfully Jun 26, 2024
91b4ed6
[Test] Turn off CSE for the 'patternMatching' test (#6251)
effectfully Jun 27, 2024
a156996
[Optimization] Remove case-of-case (#6248)
effectfully Jun 27, 2024
30402a4
Spec that verifies various script sizes (#6247)
Unisay Jun 27, 2024
e8f9389
Add cardano-constitution-tests and slack-message-broker workflows (#6…
zeme-wana Jun 27, 2024
3cdfbca
Updates to slack-message-broker.yml (#6258)
zeme-wana Jun 27, 2024
ed71a3d
Update slackapi/slack-github-action version -> v1.26.0 (#6259)
zeme-wana Jun 27, 2024
3df47ef
Improve messages in slack-message-broker.yml (#6260)
zeme-wana Jun 27, 2024
29eabaf
Fix error message in slack-message-broker.yml (#6261)
zeme-wana Jun 27, 2024
e3c3fd2
Fix another error in slack-message-broker.yml (#6262)
zeme-wana Jun 27, 2024
d0d77dc
Fix "un-rolling" a list type. (#6165)
Unisay Jun 28, 2024
115c3df
constitution: Add executable that creates json envelope (#6267)
bezirg Jun 28, 2024
c74136f
Fix bug in ./script/combined-haddock.sh (#6263)
zeme-wana Jul 1, 2024
b34d6ca
Update baseUrl in docusaurus.config.ts (#6275)
zeme-wana Jul 2, 2024
cabfc01
Improvements to haddock-site.yml (support auto-publish on push to mas…
zeme-wana Jul 2, 2024
cb791cd
Better messages in slack-message-broker.yml (#6280)
zeme-wana Jul 2, 2024
f616b87
Remove --ignore-url's from linkchecker step in combined-haddock.sh (#…
zeme-wana Jul 2, 2024
32a7336
Add cabal update step in combined-haddock.sh (#6283)
zeme-wana Jul 4, 2024
e5c0e76
Fix CsvTable.tsx and LiteralInclde.tsx in docusaurus (#6282)
zeme-wana Jul 4, 2024
7a24d97
Fix haddock documentation for cardano-constitution (#6284)
zeme-wana Jul 5, 2024
3f60557
Stronger docusaurus builds and general QOL improvements (#6287)
zeme-wana Jul 5, 2024
db89d22
Move package-lock.json from top-level to scripts/blueprints (#6289)
zeme-wana Jul 5, 2024
ee7de68
Fix editUrl in docusaurus.config.ts (#6291)
zeme-wana Jul 6, 2024
79fc117
chore(deps): bump JamesIves/github-pages-deploy-action (#6292)
dependabot[bot] Jul 8, 2024
317b63d
Fix typos (#6288)
omahs Jul 8, 2024
92f390c
Detect broken links for haddock,metatheory,docusaurus + local repo fi…
zeme-wana Jul 8, 2024
c1b9208
Fix broken linkchecker workflows (#6295)
zeme-wana Jul 8, 2024
db5cabb
Add .github/linkchecker/action.yml
zeme-wana Jul 9, 2024
55861af
Add support for ghc910 to hydraJobs (#6293)
zeme-wana Jul 9, 2024
ceb91aa
Disable linkchecker on live sites (#6298)
zeme-wana Jul 9, 2024
42d08e0
[Bug] Fix 'isNormalType' and add 'prop_normalizedTypeIsNormal' (#6272)
effectfully Jul 10, 2024
8ec1b64
Analyse script events supports PlutusLedgerLanguage V3 (#6300)
Unisay Jul 11, 2024
51ae3da
fix: parameter 33 should be a Rational (#6302)
RSoulatIOHK Jul 11, 2024
19f192d
Address guardrail script audit comments (#6305)
zliu41 Jul 12, 2024
0c02489
All names are printed with their unique values by default. (#5972)
Unisay Jul 12, 2024
5c06051
fix: types in defaultConstitution (#6307)
RSoulatIOHK Jul 17, 2024
b49bd63
Fix overflow bug in shiftByteString, rotateByteString, add tests to e…
kozross Jul 18, 2024
de7339b
Release 1.31.0.0 (#6312)
Unisay Jul 18, 2024
903e383
Re-export bitwise builtins from PlutusTx.Prelude (#6313)
kozross Jul 18, 2024
d89a339
[Costing] Increase the cost of constructors of '[]' (#6285)
effectfully Jul 18, 2024
0da4c4b
Change writeBits to take changelists as two separate lists (#6317)
kozross Jul 19, 2024
514d521
[Costing] Remove the 'ExMemoryUsage' instance for 'SomeTypeIn' (#6318)
effectfully Jul 19, 2024
db11987
feat: New version of VT-CC-01 (#6320)
RSoulatIOHK Jul 22, 2024
8c7a5f6
[Test] Make tests take reasonable time (#6286)
effectfully Jul 23, 2024
65f6714
fix: haddock error (#6323)
Unisay Jul 23, 2024
3461df2
Reverse hunk test_multiSplitSound (#6324)
bezirg Jul 23, 2024
39ae101
Kwxm/costing/bitwise 4 (#6301)
Jul 24, 2024
7f02fab
8-queens using bitwise primops benchmark (#6311)
kozross Jul 25, 2024
d510d24
[Plinth] [Builtins] Fix 'writeBits' (#6329)
effectfully Jul 25, 2024
bfac69f
[Plinth] Ban using 'toBuiltin' and 'fromBuiltin' (#6342)
effectfully Jul 26, 2024
5571f53
Kwxm/bitwise/enable nqueens benchmark (#6343)
Jul 26, 2024
c7eb24c
[plc] Support for `Natural` numbers in the default universe, backed b…
bezirg Jul 26, 2024
f74023e
nothunks ^>= 0.2 (#6349)
Unisay Jul 27, 2024
613ab5f
Make NumBytesCostedAsNumWords use Integer instead of Int (#6350)
Jul 29, 2024
ffe41b8
[Benchmark] Reduce the number of benchmarks (#6328)
effectfully Jul 30, 2024
ed76af5
[Test] Improve distribution of generated integers (#6315)
effectfully Jul 31, 2024
a4b0f43
[Plinth] [Builtins] Add a general 'mkNil' (#6347)
effectfully Jul 31, 2024
88c7e23
[Refactoring] Use 'KnownBuiltinTypeIn' instead of 'HasConstant' consi…
effectfully Aug 1, 2024
d3cf117
Restore auto generation of compiler option table (#6373)
zliu41 Aug 2, 2024
36311fe
Add the bitwise builtins to the metatheory (#6368)
Aug 5, 2024
5947b18
Restore CI checks for doc site code (#6376)
zliu41 Aug 5, 2024
e90e9f0
andByteString conformance cases (#6356)
kozross Aug 6, 2024
cd73651
Conformance cases for complementByteString (#6359)
kozross Aug 6, 2024
966b420
Conformance for orByteString (#6357)
kozross Aug 6, 2024
922c9c1
Conformance cases for readBit (#6360)
kozross Aug 6, 2024
0b6a695
Conformance for shiftByteString (#6363)
kozross Aug 6, 2024
8dcfa54
Conformance for findFirstSetBit (#6366)
kozross Aug 6, 2024
3d489da
Conformance for xorByteString (#6358)
kozross Aug 6, 2024
51a9f16
Conformance for countSetBits (#6365)
kozross Aug 6, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
PlutusV3: Datum/Redeemer in ScriptContext, Datum Optional, Unified Sc…
…ript Type (#5934)
  • Loading branch information
zliu41 authored May 30, 2024
commit 7b3fd3e41abc9cabef0faeb06b5e73cc6f0a9bc5
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,9 @@ module PlutusBenchmark.ScriptContexts where

import PlutusLedgerApi.V1.Address
import PlutusLedgerApi.V1.Value
import PlutusLedgerApi.V3 (OutputDatum (NoOutputDatum), PubKeyHash (..), ScriptContext (..),
ScriptPurpose (Spending), TxId (..), TxInfo (..), TxOut (..),
TxOutRef (..), always)
import PlutusLedgerApi.V3 (OutputDatum (NoOutputDatum), PubKeyHash (..), Redeemer (..),
ScriptContext (..), ScriptInfo (SpendingScript), TxId (..), TxInfo (..),
TxOut (..), TxOutRef (..), always)
import PlutusTx qualified
import PlutusTx.AssocMap qualified as Map
import PlutusTx.Builtins qualified as PlutusTx
Expand All @@ -19,7 +19,12 @@ import PlutusTx.Prelude qualified as PlutusTx
-- | A very crude deterministic generator for 'ScriptContext's with size
-- approximately proportional to the input integer.
mkScriptContext :: Int -> ScriptContext
mkScriptContext i = ScriptContext (mkTxInfo i) (Spending (TxOutRef (TxId "") 0))
mkScriptContext i =
ScriptContext
(mkTxInfo i)
(Redeemer (PlutusTx.toBuiltinData (1 :: Integer)))
(SpendingScript (TxOutRef (TxId "") 0) Nothing)


mkTxInfo :: Int -> TxInfo
mkTxInfo i = TxInfo {
Expand Down Expand Up @@ -62,7 +67,7 @@ checkScriptContext1 d =
-- Bang pattern to ensure this is forced, probably not necesssary
-- since we do use it later
let !sc = PlutusTx.unsafeFromBuiltinData d
(ScriptContext txi _) = sc
ScriptContext txi _ _ = sc
in
if PlutusTx.length (txInfoOutputs txi) `PlutusTx.modInteger` 2 PlutusTx.== 0
then ()
Expand Down
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
({cpu: 285912869
| mem: 1059503})
({cpu: 287479352
| mem: 1064729})
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
({cpu: 84686453
| mem: 324879})
({cpu: 86252936
| mem: 330105})
237 changes: 160 additions & 77 deletions plutus-benchmark/script-contexts/test/9.6/checkScriptContext1.pir.golden
Original file line number Diff line number Diff line change
Expand Up @@ -803,77 +803,6 @@
(unIData (headList {data} (tailList {data} args))))
(/\dead -> traceError {TxOutRef} "PT1")
{all dead. dead}
data ScriptPurpose | ScriptPurpose_match where
Certifying : integer -> TxCert -> ScriptPurpose
Minting : bytestring -> ScriptPurpose
Proposing : integer -> ProposalProcedure -> ScriptPurpose
Rewarding : Credential -> ScriptPurpose
Spending : TxOutRef -> ScriptPurpose
Voting : Voter -> ScriptPurpose
!`$fUnsafeFromDataScriptContext_$cunsafeFromBuiltinData` :
data -> ScriptPurpose
= \(d : data) ->
let
!tup : pair integer (list data) = unConstrData d
!index : integer = fstPair {integer} {list data} tup
!args : list data = sndPair {integer} {list data} tup
in
ifThenElse
{all dead. ScriptPurpose}
(equalsInteger 0 index)
(/\dead -> Minting (unBData (headList {data} args)))
(/\dead ->
ifThenElse
{all dead. ScriptPurpose}
(equalsInteger 1 index)
(/\dead ->
Spending
(`$fUnsafeFromDataTxOutRef_$cunsafeFromBuiltinData`
(headList {data} args)))
(/\dead ->
ifThenElse
{all dead. ScriptPurpose}
(equalsInteger 2 index)
(/\dead ->
Rewarding
(`$fUnsafeFromDataCredential_$cunsafeFromBuiltinData`
(headList {data} args)))
(/\dead ->
ifThenElse
{all dead. ScriptPurpose}
(equalsInteger 3 index)
(/\dead ->
Certifying
(unIData (headList {data} args))
(`$fUnsafeFromDataScriptContext_$cunsafeFromBuiltinData`
(headList {data} (tailList {data} args))))
(/\dead ->
ifThenElse
{all dead. ScriptPurpose}
(equalsInteger 4 index)
(/\dead ->
Voting
(`$fUnsafeFromDataScriptContext_$cunsafeFromBuiltinData`
(headList {data} args)))
(/\dead ->
ifThenElse
{all dead. ScriptPurpose}
(equalsInteger 5 index)
(/\dead ->
Proposing
(unIData (headList {data} args))
(`$fUnsafeFromDataProposalProcedure_$cunsafeFromBuiltinData`
(headList
{data}
(tailList {data} args))))
(/\dead ->
traceError {ScriptPurpose} "PT1")
{all dead. dead})
{all dead. dead})
{all dead. dead})
{all dead. dead})
{all dead. dead})
{all dead. dead}
~`$fUnsafeFromDataValue` :
data -> (\k v -> List (Tuple2 k v)) bytestring integer
= `$fUnsafeFromDataMap_$cunsafeFromBuiltinData`
Expand Down Expand Up @@ -1007,12 +936,26 @@
(headList {data} (tailList {data} args))))
(/\dead -> traceError {TxInInfo} "PT1")
{all dead. dead}
data ScriptInfo | ScriptInfo_match where
CertifyingScript : integer -> TxCert -> ScriptInfo
MintingScript : bytestring -> ScriptInfo
ProposingScript : integer -> ProposalProcedure -> ScriptInfo
RewardingScript : Credential -> ScriptInfo
SpendingScript : TxOutRef -> Maybe data -> ScriptInfo
VotingScript : Voter -> ScriptInfo
data (LowerBound :: * -> *) a | LowerBound_match where
LowerBound : Extended a -> Bool -> LowerBound a
data (UpperBound :: * -> *) a | UpperBound_match where
UpperBound : Extended a -> Bool -> UpperBound a
data (Interval :: * -> *) a | Interval_match where
Interval : LowerBound a -> UpperBound a -> Interval a
data ScriptPurpose | ScriptPurpose_match where
Certifying : integer -> TxCert -> ScriptPurpose
Minting : bytestring -> ScriptPurpose
Proposing : integer -> ProposalProcedure -> ScriptPurpose
Rewarding : Credential -> ScriptPurpose
Spending : TxOutRef -> ScriptPurpose
Voting : Voter -> ScriptPurpose
data Vote | Vote_match where
Abstain : Vote
VoteNo : Vote
Expand Down Expand Up @@ -1041,7 +984,7 @@
Maybe integer ->
TxInfo
data ScriptContext | ScriptContext_match where
ScriptContext : TxInfo -> ScriptPurpose -> ScriptContext
ScriptContext : TxInfo -> data -> ScriptInfo -> ScriptContext
in
\(d : data) ->
ScriptContext_match
Expand All @@ -1054,6 +997,9 @@
{all dead. ScriptContext}
(equalsInteger 0 index)
(/\dead ->
let
!l : list data = tailList {data} args
in
ScriptContext
(let
!tup : pair integer (list data)
Expand Down Expand Up @@ -1177,7 +1123,78 @@
(`$fUnsafeFromDataMap_$cunsafeFromBuiltinData`
{ScriptPurpose}
{data}
`$fUnsafeFromDataScriptContext_$cunsafeFromBuiltinData`
(\(d : data) ->
let
!tup : pair integer (list data) = unConstrData d
!index : integer = fstPair {integer} {list data} tup
!args : list data
= sndPair {integer} {list data} tup
in
ifThenElse
{all dead. ScriptPurpose}
(equalsInteger 0 index)
(/\dead -> Minting (unBData (headList {data} args)))
(/\dead ->
ifThenElse
{all dead. ScriptPurpose}
(equalsInteger 1 index)
(/\dead ->
Spending
(`$fUnsafeFromDataTxOutRef_$cunsafeFromBuiltinData`
(headList {data} args)))
(/\dead ->
ifThenElse
{all dead. ScriptPurpose}
(equalsInteger 2 index)
(/\dead ->
Rewarding
(`$fUnsafeFromDataCredential_$cunsafeFromBuiltinData`
(headList {data} args)))
(/\dead ->
ifThenElse
{all dead. ScriptPurpose}
(equalsInteger 3 index)
(/\dead ->
Certifying
(unIData (headList {data} args))
(`$fUnsafeFromDataScriptContext_$cunsafeFromBuiltinData`
(headList
{data}
(tailList {data} args))))
(/\dead ->
ifThenElse
{all dead. ScriptPurpose}
(equalsInteger 4 index)
(/\dead ->
Voting
(`$fUnsafeFromDataScriptContext_$cunsafeFromBuiltinData`
(headList {data} args)))
(/\dead ->
ifThenElse
{all dead. ScriptPurpose}
(equalsInteger 5 index)
(/\dead ->
Proposing
(unIData
(headList
{data}
args))
(`$fUnsafeFromDataProposalProcedure_$cunsafeFromBuiltinData`
(headList
{data}
(tailList
{data}
args))))
(/\dead ->
traceError
{ScriptPurpose}
"PT1")
{all dead. dead})
{all dead. dead})
{all dead. dead})
{all dead. dead})
{all dead. dead})
{all dead. dead})
`$fUnsafeFromDataBuiltinData_$cunsafeFromBuiltinData`
(headList {data} l))
(`$fUnsafeFromDataMap_$cunsafeFromBuiltinData`
Expand Down Expand Up @@ -1236,12 +1253,77 @@
(headList {data} (tailList {data} l))))
(/\dead -> traceError {TxInfo} "PT1")
{all dead. dead})
(`$fUnsafeFromDataScriptContext_$cunsafeFromBuiltinData`
(headList {data} (tailList {data} args))))
(headList {data} l)
(let
!tup : pair integer (list data)
= unConstrData (headList {data} (tailList {data} l))
!index : integer = fstPair {integer} {list data} tup
!args : list data = sndPair {integer} {list data} tup
in
ifThenElse
{all dead. ScriptInfo}
(equalsInteger 0 index)
(/\dead -> MintingScript (unBData (headList {data} args)))
(/\dead ->
ifThenElse
{all dead. ScriptInfo}
(equalsInteger 1 index)
(/\dead ->
SpendingScript
(`$fUnsafeFromDataTxOutRef_$cunsafeFromBuiltinData`
(headList {data} args))
(`$fUnsafeFromDataMaybe_$cunsafeFromBuiltinData`
{data}
`$fUnsafeFromDataBuiltinData_$cunsafeFromBuiltinData`
(headList {data} (tailList {data} args))))
(/\dead ->
ifThenElse
{all dead. ScriptInfo}
(equalsInteger 2 index)
(/\dead ->
RewardingScript
(`$fUnsafeFromDataCredential_$cunsafeFromBuiltinData`
(headList {data} args)))
(/\dead ->
ifThenElse
{all dead. ScriptInfo}
(equalsInteger 3 index)
(/\dead ->
CertifyingScript
(unIData (headList {data} args))
(`$fUnsafeFromDataScriptContext_$cunsafeFromBuiltinData`
(headList {data} (tailList {data} args))))
(/\dead ->
ifThenElse
{all dead. ScriptInfo}
(equalsInteger 4 index)
(/\dead ->
VotingScript
(`$fUnsafeFromDataScriptContext_$cunsafeFromBuiltinData`
(headList {data} args)))
(/\dead ->
ifThenElse
{all dead. ScriptInfo}
(equalsInteger 5 index)
(/\dead ->
ProposingScript
(unIData (headList {data} args))
(`$fUnsafeFromDataProposalProcedure_$cunsafeFromBuiltinData`
(headList
{data}
(tailList {data} args))))
(/\dead ->
traceError {ScriptInfo} "PT1")
{all dead. dead})
{all dead. dead})
{all dead. dead})
{all dead. dead})
{all dead. dead})
{all dead. dead}))
(/\dead -> traceError {ScriptContext} "PT1")
{all dead. dead})
{Unit}
(\(ipv : TxInfo) (ipv : ScriptPurpose) ->
(\(ipv : TxInfo) (ipv : data) (ipv : ScriptInfo) ->
ifThenElse
{all dead. Unit}
(equalsInteger
Expand Down Expand Up @@ -1305,4 +1387,5 @@
, List []
, Constr 1 []
, Constr 1 [] ]
, Constr 1 [Constr 0 [B #, I 0]] ])
, I 1
, Constr 1 [Constr 0 [B #, I 0], Constr 1 []] ])
Original file line number Diff line number Diff line change
@@ -1 +1 @@
2785
2961
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
({cpu: 275563740
| mem: 1009660})
({cpu: 277114223
| mem: 1014786})
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
({cpu: 81588652
| mem: 310268})
({cpu: 83139135
| mem: 315394})
Loading
Loading