diff --git a/crates/lang/src/uplc.rs b/crates/lang/src/uplc.rs index 95debdc7..59e8f16f 100644 --- a/crates/lang/src/uplc.rs +++ b/crates/lang/src/uplc.rs @@ -207,8 +207,6 @@ impl<'a> CodeGenerator<'a> { interner.program(&mut program); - println!("{}", program.to_pretty()); - program } @@ -506,7 +504,7 @@ impl<'a> CodeGenerator<'a> { TypedExpr::Var { name, constructor, .. } => (name, constructor.tipo.clone()), - _ => todo!(), + rest => todo!("implement: {:#?}", rest), }; let mut type_name = "".to_string(); diff --git a/examples/sample/assets/swap/spend/mainnet.txt b/examples/sample/assets/swap/spend/mainnet.txt index b908d8c3..06099c38 100644 --- a/examples/sample/assets/swap/spend/mainnet.txt +++ b/examples/sample/assets/swap/spend/mainnet.txt @@ -1 +1 @@ -addr1wx9rdt272hls3skwthqx39njaptkp7u0nq3n53rhhvtptecfls0j2 \ No newline at end of file +addr1wydv96gzc7ghwsqrded0k4y60m22sv805dhr68nlg7mjnzqwa6nwm \ No newline at end of file diff --git a/examples/sample/assets/swap/spend/payment_script.json b/examples/sample/assets/swap/spend/payment_script.json index 190e4696..0e7aa7a5 100644 --- a/examples/sample/assets/swap/spend/payment_script.json +++ b/examples/sample/assets/swap/spend/payment_script.json @@ -1,5 +1,5 @@ { "type": "PlutusScriptV2", "description": "Generated by Aiken", - "cborHex": "5903495903460100002105646174756d00210472646d7200210363747800533357346514636f6e7374725f6669656c645f6765745f61726700320115636f6e7374725f6669656c64735f6578706f7365720032010c646174756d5f6669656c64730032010f646174756d5f6669656c645f66696e0032010161003201055f706970650032010c737761705f6164645f6f6e650032010a737761705f74776963650032010c737761705f6164645f74776f003201055f7069706500320110737761705f66696e616c5f636865636b00300110737761705f66696e616c5f636865636b000101055f70697065000221017a00337101017a000148020c010c737761705f6164645f74776f000101055f7069706500042101780033010a737761705f74776963650002010c737761705f6164645f6f6e6500030101780001210166002107696e697469616c003001016600023001016600020107696e697469616c0001210576616c7565003370010576616c7565000148008101610001010f646174756d5f6669656c645f66696e0001375a660114636f6e7374725f6669656c645f6765745f6172670003010c646174756d5f6669656c6473000148000c0115636f6e7374725f6669656c64735f6578706f73657200010105646174756d0005210a636f6e7374725f7661720037586e78dd50010a636f6e7374725f7661720001210b636f6e7374725f6c69737400210a6172675f6e756d6265720032010772656375727365003330010772656375727365000101077265637572736500014800010b636f6e7374725f6c6973740003210d73656c665f7265637572736f7200211263757272656e745f6172675f6e756d6265720021136c6973745f6f665f636f6e7374725f61726773003333573466e1c10a6172675f6e756d6265720004011263757272656e745f6172675f6e756d62657200025742411b63757272656e745f6c6973745f6f665f636f6e7374725f61726773003330010d73656c665f7265637572736f720004010d73656c665f7265637572736f7200043370011263757272656e745f6172675f6e756d626572000348008d5d10011b63757272656e745f6c6973745f6f665f636f6e7374725f61726773000101136c6973745f6f665f636f6e7374725f617267730001149859" + "cborHex": "5905445905410100002105646174756d00210472646d7200210363747800533357346514636f6e7374725f6669656c645f6765745f61726700320115636f6e7374725f6669656c64735f6578706f7365720032010c646174756d5f6669656c647300320110646174756d5f6669656c645f72646d72003201017800320108785f6669656c64730032010c785f6669656c645f7469706f0032010d785f6669656c645f747769636500320109785f6669656c645f300032010b785f6669656c645f66696e0032010c785f6669656c645f66696e640032011b63686f6f73655f73616d706c655f52656465656d5f636f6e737472003333011b63686f6f73655f73616d706c655f52656465656d5f636f6e737472000101017800081321057469706f310032010366696e003371090000010366696e0001010c785f6669656c645f7469706f0007010b785f6669656c645f66696e000313210366696e003201057477696365003371090000010366696e0002010d785f6669656c645f74776963650006010c785f6669656c645f66696e640002132104736f6d650033710900000104736f6d6500010109785f6669656c645f300004210b636f6e7374725f646174610032010c636f6e7374725f696e64657800210f636f6e7374725f305f726573756c7400210f636f6e7374725f315f726573756c740021176c6173745f636f6e7374727563746f725f726573756c74005333573466e1d20000010c636f6e7374725f696e6465780004010f636f6e7374725f305f726573756c740003333573466e1d2002010c636f6e7374725f696e6465780004010f636f6e7374725f315f726573756c74000201176c6173745f636f6e7374727563746f725f726573756c740001373a6ea8010b636f6e7374725f646174610001330114636f6e7374725f6669656c645f6765745f617267000a0108785f6669656c6473000548008cc114636f6e7374725f6669656c645f6765745f61726700090108785f6669656c6473000448008cc114636f6e7374725f6669656c645f6765745f61726700080108785f6669656c6473000348000cc114636f6e7374725f6669656c645f6765745f61726700070108785f6669656c6473000248000cc114636f6e7374725f6669656c645f6765745f61726700060108785f6669656c6473000148000c0115636f6e7374725f6669656c64735f6578706f736572000401017800010110646174756d5f6669656c645f72646d720001330114636f6e7374725f6669656c645f6765745f6172670003010c646174756d5f6669656c6473000148010c0115636f6e7374725f6669656c64735f6578706f73657200010105646174756d0005210a636f6e7374725f7661720037586e78dd50010a636f6e7374725f7661720001210b636f6e7374725f6c69737400210a6172675f6e756d6265720032010772656375727365003330010772656375727365000101077265637572736500014800010b636f6e7374725f6c6973740003210d73656c665f7265637572736f7200211263757272656e745f6172675f6e756d6265720021136c6973745f6f665f636f6e7374725f61726773003333573466e1c10a6172675f6e756d6265720004011263757272656e745f6172675f6e756d62657200025742411b63757272656e745f6c6973745f6f665f636f6e7374725f61726773003330010d73656c665f7265637572736f720004010d73656c665f7265637572736f7200043370011263757272656e745f6172675f6e756d626572000348008d5d10011b63757272656e745f6c6973745f6f665f636f6e7374725f61726773000101136c6973745f6f665f636f6e7374725f617267730001149859" } \ No newline at end of file diff --git a/examples/sample/assets/swap/spend/script.txt b/examples/sample/assets/swap/spend/script.txt index 2f1de004..7a1ed910 100644 --- a/examples/sample/assets/swap/spend/script.txt +++ b/examples/sample/assets/swap/spend/script.txt @@ -1 +1 @@ -5903460100002105646174756d00210472646d7200210363747800533357346514636f6e7374725f6669656c645f6765745f61726700320115636f6e7374725f6669656c64735f6578706f7365720032010c646174756d5f6669656c64730032010f646174756d5f6669656c645f66696e0032010161003201055f706970650032010c737761705f6164645f6f6e650032010a737761705f74776963650032010c737761705f6164645f74776f003201055f7069706500320110737761705f66696e616c5f636865636b00300110737761705f66696e616c5f636865636b000101055f70697065000221017a00337101017a000148020c010c737761705f6164645f74776f000101055f7069706500042101780033010a737761705f74776963650002010c737761705f6164645f6f6e6500030101780001210166002107696e697469616c003001016600023001016600020107696e697469616c0001210576616c7565003370010576616c7565000148008101610001010f646174756d5f6669656c645f66696e0001375a660114636f6e7374725f6669656c645f6765745f6172670003010c646174756d5f6669656c6473000148000c0115636f6e7374725f6669656c64735f6578706f73657200010105646174756d0005210a636f6e7374725f7661720037586e78dd50010a636f6e7374725f7661720001210b636f6e7374725f6c69737400210a6172675f6e756d6265720032010772656375727365003330010772656375727365000101077265637572736500014800010b636f6e7374725f6c6973740003210d73656c665f7265637572736f7200211263757272656e745f6172675f6e756d6265720021136c6973745f6f665f636f6e7374725f61726773003333573466e1c10a6172675f6e756d6265720004011263757272656e745f6172675f6e756d62657200025742411b63757272656e745f6c6973745f6f665f636f6e7374725f61726773003330010d73656c665f7265637572736f720004010d73656c665f7265637572736f7200043370011263757272656e745f6172675f6e756d626572000348008d5d10011b63757272656e745f6c6973745f6f665f636f6e7374725f61726773000101136c6973745f6f665f636f6e7374725f617267730001149859 \ No newline at end of file +5905410100002105646174756d00210472646d7200210363747800533357346514636f6e7374725f6669656c645f6765745f61726700320115636f6e7374725f6669656c64735f6578706f7365720032010c646174756d5f6669656c647300320110646174756d5f6669656c645f72646d72003201017800320108785f6669656c64730032010c785f6669656c645f7469706f0032010d785f6669656c645f747769636500320109785f6669656c645f300032010b785f6669656c645f66696e0032010c785f6669656c645f66696e640032011b63686f6f73655f73616d706c655f52656465656d5f636f6e737472003333011b63686f6f73655f73616d706c655f52656465656d5f636f6e737472000101017800081321057469706f310032010366696e003371090000010366696e0001010c785f6669656c645f7469706f0007010b785f6669656c645f66696e000313210366696e003201057477696365003371090000010366696e0002010d785f6669656c645f74776963650006010c785f6669656c645f66696e640002132104736f6d650033710900000104736f6d6500010109785f6669656c645f300004210b636f6e7374725f646174610032010c636f6e7374725f696e64657800210f636f6e7374725f305f726573756c7400210f636f6e7374725f315f726573756c740021176c6173745f636f6e7374727563746f725f726573756c74005333573466e1d20000010c636f6e7374725f696e6465780004010f636f6e7374725f305f726573756c740003333573466e1d2002010c636f6e7374725f696e6465780004010f636f6e7374725f315f726573756c74000201176c6173745f636f6e7374727563746f725f726573756c740001373a6ea8010b636f6e7374725f646174610001330114636f6e7374725f6669656c645f6765745f617267000a0108785f6669656c6473000548008cc114636f6e7374725f6669656c645f6765745f61726700090108785f6669656c6473000448008cc114636f6e7374725f6669656c645f6765745f61726700080108785f6669656c6473000348000cc114636f6e7374725f6669656c645f6765745f61726700070108785f6669656c6473000248000cc114636f6e7374725f6669656c645f6765745f61726700060108785f6669656c6473000148000c0115636f6e7374725f6669656c64735f6578706f736572000401017800010110646174756d5f6669656c645f72646d720001330114636f6e7374725f6669656c645f6765745f6172670003010c646174756d5f6669656c6473000148010c0115636f6e7374725f6669656c64735f6578706f73657200010105646174756d0005210a636f6e7374725f7661720037586e78dd50010a636f6e7374725f7661720001210b636f6e7374725f6c69737400210a6172675f6e756d6265720032010772656375727365003330010772656375727365000101077265637572736500014800010b636f6e7374725f6c6973740003210d73656c665f7265637572736f7200211263757272656e745f6172675f6e756d6265720021136c6973745f6f665f636f6e7374725f61726773003333573466e1c10a6172675f6e756d6265720004011263757272656e745f6172675f6e756d62657200025742411b63757272656e745f6c6973745f6f665f636f6e7374725f61726773003330010d73656c665f7265637572736f720004010d73656c665f7265637572736f7200043370011263757272656e745f6172675f6e756d626572000348008d5d10011b63757272656e745f6c6973745f6f665f636f6e7374725f61726773000101136c6973745f6f665f636f6e7374725f617267730001149859 \ No newline at end of file diff --git a/examples/sample/assets/swap/spend/testnet.txt b/examples/sample/assets/swap/spend/testnet.txt index 1b72b4ab..a956bb11 100644 --- a/examples/sample/assets/swap/spend/testnet.txt +++ b/examples/sample/assets/swap/spend/testnet.txt @@ -1 +1 @@ -addr_test1wz9rdt272hls3skwthqx39njaptkp7u0nq3n53rhhvtptecjhyna0 \ No newline at end of file +addr_test1wqdv96gzc7ghwsqrded0k4y60m22sv805dhr68nlg7mjnzq44w0p7 \ No newline at end of file diff --git a/examples/sample/validators/swap.ak b/examples/sample/validators/swap.ak index 8a696331..2183f2eb 100644 --- a/examples/sample/validators/swap.ak +++ b/examples/sample/validators/swap.ak @@ -33,8 +33,7 @@ pub fn spend( rdmr: Redeemer, ctx: spend.ScriptContext, ) -> Bool { - let x = datum.rdmr - when x is { + when datum.rdmr is { sample.Buy(tipo1, fin) -> fin > 0 sample.Sell(twice, find: fin) -> fin > 0 sample.Hold(some) -> some > 0