diff --git a/simplicity-sys/depend/simplicity-HEAD-revision.txt b/simplicity-sys/depend/simplicity-HEAD-revision.txt index 0b0ff54e..8f396616 100644 --- a/simplicity-sys/depend/simplicity-HEAD-revision.txt +++ b/simplicity-sys/depend/simplicity-HEAD-revision.txt @@ -1,2 +1,2 @@ # This file has been automatically generated. -121b2951d8cca3d73dccd6fcbe721f2195025067 +3daad68dc9e995fefcd5287fa5b15a7bfb13462a diff --git a/src/jet/init/bitcoin.rs b/src/jet/init/bitcoin.rs index 225b609b..187604ab 100644 --- a/src/jet/init/bitcoin.rs +++ b/src/jet/init/bitcoin.rs @@ -12,7 +12,7 @@ use std::io::Write; use std::{fmt, str}; use crate::jet::bitcoin::BitcoinEnv; -/// Bitcoin jet family +/// The Bitcoin jet family. #[derive(Copy, Clone, PartialEq, Eq, PartialOrd, Ord, Debug, Hash)] pub enum Bitcoin { Add16, @@ -416,6 +416,411 @@ pub enum Bitcoin { XorXor8, } +impl Bitcoin { + /// Array of all Bitcoin jets. + pub const ALL: [Self; 399] = [ + Self::Add16, + Self::Add32, + Self::Add64, + Self::Add8, + Self::All16, + Self::All32, + Self::All64, + Self::All8, + Self::And1, + Self::And16, + Self::And32, + Self::And64, + Self::And8, + Self::Bip0340Verify, + Self::Ch1, + Self::Ch16, + Self::Ch32, + Self::Ch64, + Self::Ch8, + Self::CheckLockDistance, + Self::CheckLockDuration, + Self::CheckLockHeight, + Self::CheckLockTime, + Self::CheckSigVerify, + Self::Complement1, + Self::Complement16, + Self::Complement32, + Self::Complement64, + Self::Complement8, + Self::CurrentAnnexHash, + Self::CurrentIndex, + Self::CurrentPrevOutpoint, + Self::CurrentScriptSigHash, + Self::CurrentSequence, + Self::CurrentValue, + Self::Decompress, + Self::Decrement16, + Self::Decrement32, + Self::Decrement64, + Self::Decrement8, + Self::DivMod128_64, + Self::DivMod16, + Self::DivMod32, + Self::DivMod64, + Self::DivMod8, + Self::Divide16, + Self::Divide32, + Self::Divide64, + Self::Divide8, + Self::Divides16, + Self::Divides32, + Self::Divides64, + Self::Divides8, + Self::Eq1, + Self::Eq16, + Self::Eq256, + Self::Eq32, + Self::Eq64, + Self::Eq8, + Self::FeAdd, + Self::FeInvert, + Self::FeIsOdd, + Self::FeIsZero, + Self::FeMultiply, + Self::FeMultiplyBeta, + Self::FeNegate, + Self::FeNormalize, + Self::FeSquare, + Self::FeSquareRoot, + Self::FullAdd16, + Self::FullAdd32, + Self::FullAdd64, + Self::FullAdd8, + Self::FullDecrement16, + Self::FullDecrement32, + Self::FullDecrement64, + Self::FullDecrement8, + Self::FullIncrement16, + Self::FullIncrement32, + Self::FullIncrement64, + Self::FullIncrement8, + Self::FullLeftShift16_1, + Self::FullLeftShift16_2, + Self::FullLeftShift16_4, + Self::FullLeftShift16_8, + Self::FullLeftShift32_1, + Self::FullLeftShift32_16, + Self::FullLeftShift32_2, + Self::FullLeftShift32_4, + Self::FullLeftShift32_8, + Self::FullLeftShift64_1, + Self::FullLeftShift64_16, + Self::FullLeftShift64_2, + Self::FullLeftShift64_32, + Self::FullLeftShift64_4, + Self::FullLeftShift64_8, + Self::FullLeftShift8_1, + Self::FullLeftShift8_2, + Self::FullLeftShift8_4, + Self::FullMultiply16, + Self::FullMultiply32, + Self::FullMultiply64, + Self::FullMultiply8, + Self::FullRightShift16_1, + Self::FullRightShift16_2, + Self::FullRightShift16_4, + Self::FullRightShift16_8, + Self::FullRightShift32_1, + Self::FullRightShift32_16, + Self::FullRightShift32_2, + Self::FullRightShift32_4, + Self::FullRightShift32_8, + Self::FullRightShift64_1, + Self::FullRightShift64_16, + Self::FullRightShift64_2, + Self::FullRightShift64_32, + Self::FullRightShift64_4, + Self::FullRightShift64_8, + Self::FullRightShift8_1, + Self::FullRightShift8_2, + Self::FullRightShift8_4, + Self::FullSubtract16, + Self::FullSubtract32, + Self::FullSubtract64, + Self::FullSubtract8, + Self::GeIsOnCurve, + Self::GeNegate, + Self::GejAdd, + Self::GejDouble, + Self::GejEquiv, + Self::GejGeAdd, + Self::GejGeAddEx, + Self::GejGeEquiv, + Self::GejInfinity, + Self::GejIsInfinity, + Self::GejIsOnCurve, + Self::GejNegate, + Self::GejNormalize, + Self::GejRescale, + Self::GejXEquiv, + Self::GejYIsOdd, + Self::Generate, + Self::HashToCurve, + Self::High1, + Self::High16, + Self::High32, + Self::High64, + Self::High8, + Self::Increment16, + Self::Increment32, + Self::Increment64, + Self::Increment8, + Self::InputAnnexHash, + Self::InputPrevOutpoint, + Self::InputScriptSigHash, + Self::InputSequence, + Self::InputValue, + Self::InternalKey, + Self::IsOne16, + Self::IsOne32, + Self::IsOne64, + Self::IsOne8, + Self::IsZero16, + Self::IsZero32, + Self::IsZero64, + Self::IsZero8, + Self::Le16, + Self::Le32, + Self::Le64, + Self::Le8, + Self::LeftExtend16_32, + Self::LeftExtend16_64, + Self::LeftExtend1_16, + Self::LeftExtend1_32, + Self::LeftExtend1_64, + Self::LeftExtend1_8, + Self::LeftExtend32_64, + Self::LeftExtend8_16, + Self::LeftExtend8_32, + Self::LeftExtend8_64, + Self::LeftPadHigh16_32, + Self::LeftPadHigh16_64, + Self::LeftPadHigh1_16, + Self::LeftPadHigh1_32, + Self::LeftPadHigh1_64, + Self::LeftPadHigh1_8, + Self::LeftPadHigh32_64, + Self::LeftPadHigh8_16, + Self::LeftPadHigh8_32, + Self::LeftPadHigh8_64, + Self::LeftPadLow16_32, + Self::LeftPadLow16_64, + Self::LeftPadLow1_16, + Self::LeftPadLow1_32, + Self::LeftPadLow1_64, + Self::LeftPadLow1_8, + Self::LeftPadLow32_64, + Self::LeftPadLow8_16, + Self::LeftPadLow8_32, + Self::LeftPadLow8_64, + Self::LeftRotate16, + Self::LeftRotate32, + Self::LeftRotate64, + Self::LeftRotate8, + Self::LeftShift16, + Self::LeftShift32, + Self::LeftShift64, + Self::LeftShift8, + Self::LeftShiftWith16, + Self::LeftShiftWith32, + Self::LeftShiftWith64, + Self::LeftShiftWith8, + Self::Leftmost16_1, + Self::Leftmost16_2, + Self::Leftmost16_4, + Self::Leftmost16_8, + Self::Leftmost32_1, + Self::Leftmost32_16, + Self::Leftmost32_2, + Self::Leftmost32_4, + Self::Leftmost32_8, + Self::Leftmost64_1, + Self::Leftmost64_16, + Self::Leftmost64_2, + Self::Leftmost64_32, + Self::Leftmost64_4, + Self::Leftmost64_8, + Self::Leftmost8_1, + Self::Leftmost8_2, + Self::Leftmost8_4, + Self::LinearCombination1, + Self::LinearVerify1, + Self::LockTime, + Self::Low1, + Self::Low16, + Self::Low32, + Self::Low64, + Self::Low8, + Self::Lt16, + Self::Lt32, + Self::Lt64, + Self::Lt8, + Self::Maj1, + Self::Maj16, + Self::Maj32, + Self::Maj64, + Self::Maj8, + Self::Max16, + Self::Max32, + Self::Max64, + Self::Max8, + Self::Median16, + Self::Median32, + Self::Median64, + Self::Median8, + Self::Min16, + Self::Min32, + Self::Min64, + Self::Min8, + Self::Modulo16, + Self::Modulo32, + Self::Modulo64, + Self::Modulo8, + Self::Multiply16, + Self::Multiply32, + Self::Multiply64, + Self::Multiply8, + Self::Negate16, + Self::Negate32, + Self::Negate64, + Self::Negate8, + Self::NumInputs, + Self::NumOutputs, + Self::One16, + Self::One32, + Self::One64, + Self::One8, + Self::Or1, + Self::Or16, + Self::Or32, + Self::Or64, + Self::Or8, + Self::OutputScriptHash, + Self::OutputValue, + Self::ParseLock, + Self::ParseSequence, + Self::PointVerify1, + Self::RightExtend16_32, + Self::RightExtend16_64, + Self::RightExtend32_64, + Self::RightExtend8_16, + Self::RightExtend8_32, + Self::RightExtend8_64, + Self::RightPadHigh16_32, + Self::RightPadHigh16_64, + Self::RightPadHigh1_16, + Self::RightPadHigh1_32, + Self::RightPadHigh1_64, + Self::RightPadHigh1_8, + Self::RightPadHigh32_64, + Self::RightPadHigh8_16, + Self::RightPadHigh8_32, + Self::RightPadHigh8_64, + Self::RightPadLow16_32, + Self::RightPadLow16_64, + Self::RightPadLow1_16, + Self::RightPadLow1_32, + Self::RightPadLow1_64, + Self::RightPadLow1_8, + Self::RightPadLow32_64, + Self::RightPadLow8_16, + Self::RightPadLow8_32, + Self::RightPadLow8_64, + Self::RightRotate16, + Self::RightRotate32, + Self::RightRotate64, + Self::RightRotate8, + Self::RightShift16, + Self::RightShift32, + Self::RightShift64, + Self::RightShift8, + Self::RightShiftWith16, + Self::RightShiftWith32, + Self::RightShiftWith64, + Self::RightShiftWith8, + Self::Rightmost16_1, + Self::Rightmost16_2, + Self::Rightmost16_4, + Self::Rightmost16_8, + Self::Rightmost32_1, + Self::Rightmost32_16, + Self::Rightmost32_2, + Self::Rightmost32_4, + Self::Rightmost32_8, + Self::Rightmost64_1, + Self::Rightmost64_16, + Self::Rightmost64_2, + Self::Rightmost64_32, + Self::Rightmost64_4, + Self::Rightmost64_8, + Self::Rightmost8_1, + Self::Rightmost8_2, + Self::Rightmost8_4, + Self::ScalarAdd, + Self::ScalarInvert, + Self::ScalarIsZero, + Self::ScalarMultiply, + Self::ScalarMultiplyLambda, + Self::ScalarNegate, + Self::ScalarNormalize, + Self::ScalarSquare, + Self::Scale, + Self::ScriptCMR, + Self::Sha256Block, + Self::Sha256Ctx8Add1, + Self::Sha256Ctx8Add128, + Self::Sha256Ctx8Add16, + Self::Sha256Ctx8Add2, + Self::Sha256Ctx8Add256, + Self::Sha256Ctx8Add32, + Self::Sha256Ctx8Add4, + Self::Sha256Ctx8Add512, + Self::Sha256Ctx8Add64, + Self::Sha256Ctx8Add8, + Self::Sha256Ctx8AddBuffer511, + Self::Sha256Ctx8Finalize, + Self::Sha256Ctx8Init, + Self::Sha256Iv, + Self::Some1, + Self::Some16, + Self::Some32, + Self::Some64, + Self::Some8, + Self::Subtract16, + Self::Subtract32, + Self::Subtract64, + Self::Subtract8, + Self::Swu, + Self::TapleafVersion, + Self::Tappath, + Self::TotalInputValue, + Self::TotalOutputValue, + Self::TxIsFinal, + Self::TxLockDistance, + Self::TxLockDuration, + Self::TxLockHeight, + Self::TxLockTime, + Self::Verify, + Self::Version, + Self::Xor1, + Self::Xor16, + Self::Xor32, + Self::Xor64, + Self::Xor8, + Self::XorXor1, + Self::XorXor16, + Self::XorXor32, + Self::XorXor64, + Self::XorXor8, + ]; +} + impl Jet for Bitcoin { type Environment = BitcoinEnv; diff --git a/src/jet/init/core.rs b/src/jet/init/core.rs index 659d6dfc..c9f8eab3 100644 --- a/src/jet/init/core.rs +++ b/src/jet/init/core.rs @@ -11,7 +11,7 @@ use simplicity_sys::CFrameItem; use std::io::Write; use std::{fmt, str}; -/// Core jet family +/// The Core jet family. #[derive(Copy, Clone, PartialEq, Eq, PartialOrd, Ord, Debug, Hash)] pub enum Core { Add16, @@ -383,6 +383,379 @@ pub enum Core { XorXor8, } +impl Core { + /// Array of all Core jets. + pub const ALL: [Self; 367] = [ + Self::Add16, + Self::Add32, + Self::Add64, + Self::Add8, + Self::All16, + Self::All32, + Self::All64, + Self::All8, + Self::And1, + Self::And16, + Self::And32, + Self::And64, + Self::And8, + Self::Bip0340Verify, + Self::Ch1, + Self::Ch16, + Self::Ch32, + Self::Ch64, + Self::Ch8, + Self::CheckSigVerify, + Self::Complement1, + Self::Complement16, + Self::Complement32, + Self::Complement64, + Self::Complement8, + Self::Decompress, + Self::Decrement16, + Self::Decrement32, + Self::Decrement64, + Self::Decrement8, + Self::DivMod128_64, + Self::DivMod16, + Self::DivMod32, + Self::DivMod64, + Self::DivMod8, + Self::Divide16, + Self::Divide32, + Self::Divide64, + Self::Divide8, + Self::Divides16, + Self::Divides32, + Self::Divides64, + Self::Divides8, + Self::Eq1, + Self::Eq16, + Self::Eq256, + Self::Eq32, + Self::Eq64, + Self::Eq8, + Self::FeAdd, + Self::FeInvert, + Self::FeIsOdd, + Self::FeIsZero, + Self::FeMultiply, + Self::FeMultiplyBeta, + Self::FeNegate, + Self::FeNormalize, + Self::FeSquare, + Self::FeSquareRoot, + Self::FullAdd16, + Self::FullAdd32, + Self::FullAdd64, + Self::FullAdd8, + Self::FullDecrement16, + Self::FullDecrement32, + Self::FullDecrement64, + Self::FullDecrement8, + Self::FullIncrement16, + Self::FullIncrement32, + Self::FullIncrement64, + Self::FullIncrement8, + Self::FullLeftShift16_1, + Self::FullLeftShift16_2, + Self::FullLeftShift16_4, + Self::FullLeftShift16_8, + Self::FullLeftShift32_1, + Self::FullLeftShift32_16, + Self::FullLeftShift32_2, + Self::FullLeftShift32_4, + Self::FullLeftShift32_8, + Self::FullLeftShift64_1, + Self::FullLeftShift64_16, + Self::FullLeftShift64_2, + Self::FullLeftShift64_32, + Self::FullLeftShift64_4, + Self::FullLeftShift64_8, + Self::FullLeftShift8_1, + Self::FullLeftShift8_2, + Self::FullLeftShift8_4, + Self::FullMultiply16, + Self::FullMultiply32, + Self::FullMultiply64, + Self::FullMultiply8, + Self::FullRightShift16_1, + Self::FullRightShift16_2, + Self::FullRightShift16_4, + Self::FullRightShift16_8, + Self::FullRightShift32_1, + Self::FullRightShift32_16, + Self::FullRightShift32_2, + Self::FullRightShift32_4, + Self::FullRightShift32_8, + Self::FullRightShift64_1, + Self::FullRightShift64_16, + Self::FullRightShift64_2, + Self::FullRightShift64_32, + Self::FullRightShift64_4, + Self::FullRightShift64_8, + Self::FullRightShift8_1, + Self::FullRightShift8_2, + Self::FullRightShift8_4, + Self::FullSubtract16, + Self::FullSubtract32, + Self::FullSubtract64, + Self::FullSubtract8, + Self::GeIsOnCurve, + Self::GeNegate, + Self::GejAdd, + Self::GejDouble, + Self::GejEquiv, + Self::GejGeAdd, + Self::GejGeAddEx, + Self::GejGeEquiv, + Self::GejInfinity, + Self::GejIsInfinity, + Self::GejIsOnCurve, + Self::GejNegate, + Self::GejNormalize, + Self::GejRescale, + Self::GejXEquiv, + Self::GejYIsOdd, + Self::Generate, + Self::HashToCurve, + Self::High1, + Self::High16, + Self::High32, + Self::High64, + Self::High8, + Self::Increment16, + Self::Increment32, + Self::Increment64, + Self::Increment8, + Self::IsOne16, + Self::IsOne32, + Self::IsOne64, + Self::IsOne8, + Self::IsZero16, + Self::IsZero32, + Self::IsZero64, + Self::IsZero8, + Self::Le16, + Self::Le32, + Self::Le64, + Self::Le8, + Self::LeftExtend16_32, + Self::LeftExtend16_64, + Self::LeftExtend1_16, + Self::LeftExtend1_32, + Self::LeftExtend1_64, + Self::LeftExtend1_8, + Self::LeftExtend32_64, + Self::LeftExtend8_16, + Self::LeftExtend8_32, + Self::LeftExtend8_64, + Self::LeftPadHigh16_32, + Self::LeftPadHigh16_64, + Self::LeftPadHigh1_16, + Self::LeftPadHigh1_32, + Self::LeftPadHigh1_64, + Self::LeftPadHigh1_8, + Self::LeftPadHigh32_64, + Self::LeftPadHigh8_16, + Self::LeftPadHigh8_32, + Self::LeftPadHigh8_64, + Self::LeftPadLow16_32, + Self::LeftPadLow16_64, + Self::LeftPadLow1_16, + Self::LeftPadLow1_32, + Self::LeftPadLow1_64, + Self::LeftPadLow1_8, + Self::LeftPadLow32_64, + Self::LeftPadLow8_16, + Self::LeftPadLow8_32, + Self::LeftPadLow8_64, + Self::LeftRotate16, + Self::LeftRotate32, + Self::LeftRotate64, + Self::LeftRotate8, + Self::LeftShift16, + Self::LeftShift32, + Self::LeftShift64, + Self::LeftShift8, + Self::LeftShiftWith16, + Self::LeftShiftWith32, + Self::LeftShiftWith64, + Self::LeftShiftWith8, + Self::Leftmost16_1, + Self::Leftmost16_2, + Self::Leftmost16_4, + Self::Leftmost16_8, + Self::Leftmost32_1, + Self::Leftmost32_16, + Self::Leftmost32_2, + Self::Leftmost32_4, + Self::Leftmost32_8, + Self::Leftmost64_1, + Self::Leftmost64_16, + Self::Leftmost64_2, + Self::Leftmost64_32, + Self::Leftmost64_4, + Self::Leftmost64_8, + Self::Leftmost8_1, + Self::Leftmost8_2, + Self::Leftmost8_4, + Self::LinearCombination1, + Self::LinearVerify1, + Self::Low1, + Self::Low16, + Self::Low32, + Self::Low64, + Self::Low8, + Self::Lt16, + Self::Lt32, + Self::Lt64, + Self::Lt8, + Self::Maj1, + Self::Maj16, + Self::Maj32, + Self::Maj64, + Self::Maj8, + Self::Max16, + Self::Max32, + Self::Max64, + Self::Max8, + Self::Median16, + Self::Median32, + Self::Median64, + Self::Median8, + Self::Min16, + Self::Min32, + Self::Min64, + Self::Min8, + Self::Modulo16, + Self::Modulo32, + Self::Modulo64, + Self::Modulo8, + Self::Multiply16, + Self::Multiply32, + Self::Multiply64, + Self::Multiply8, + Self::Negate16, + Self::Negate32, + Self::Negate64, + Self::Negate8, + Self::One16, + Self::One32, + Self::One64, + Self::One8, + Self::Or1, + Self::Or16, + Self::Or32, + Self::Or64, + Self::Or8, + Self::ParseLock, + Self::ParseSequence, + Self::PointVerify1, + Self::RightExtend16_32, + Self::RightExtend16_64, + Self::RightExtend32_64, + Self::RightExtend8_16, + Self::RightExtend8_32, + Self::RightExtend8_64, + Self::RightPadHigh16_32, + Self::RightPadHigh16_64, + Self::RightPadHigh1_16, + Self::RightPadHigh1_32, + Self::RightPadHigh1_64, + Self::RightPadHigh1_8, + Self::RightPadHigh32_64, + Self::RightPadHigh8_16, + Self::RightPadHigh8_32, + Self::RightPadHigh8_64, + Self::RightPadLow16_32, + Self::RightPadLow16_64, + Self::RightPadLow1_16, + Self::RightPadLow1_32, + Self::RightPadLow1_64, + Self::RightPadLow1_8, + Self::RightPadLow32_64, + Self::RightPadLow8_16, + Self::RightPadLow8_32, + Self::RightPadLow8_64, + Self::RightRotate16, + Self::RightRotate32, + Self::RightRotate64, + Self::RightRotate8, + Self::RightShift16, + Self::RightShift32, + Self::RightShift64, + Self::RightShift8, + Self::RightShiftWith16, + Self::RightShiftWith32, + Self::RightShiftWith64, + Self::RightShiftWith8, + Self::Rightmost16_1, + Self::Rightmost16_2, + Self::Rightmost16_4, + Self::Rightmost16_8, + Self::Rightmost32_1, + Self::Rightmost32_16, + Self::Rightmost32_2, + Self::Rightmost32_4, + Self::Rightmost32_8, + Self::Rightmost64_1, + Self::Rightmost64_16, + Self::Rightmost64_2, + Self::Rightmost64_32, + Self::Rightmost64_4, + Self::Rightmost64_8, + Self::Rightmost8_1, + Self::Rightmost8_2, + Self::Rightmost8_4, + Self::ScalarAdd, + Self::ScalarInvert, + Self::ScalarIsZero, + Self::ScalarMultiply, + Self::ScalarMultiplyLambda, + Self::ScalarNegate, + Self::ScalarNormalize, + Self::ScalarSquare, + Self::Scale, + Self::Sha256Block, + Self::Sha256Ctx8Add1, + Self::Sha256Ctx8Add128, + Self::Sha256Ctx8Add16, + Self::Sha256Ctx8Add2, + Self::Sha256Ctx8Add256, + Self::Sha256Ctx8Add32, + Self::Sha256Ctx8Add4, + Self::Sha256Ctx8Add512, + Self::Sha256Ctx8Add64, + Self::Sha256Ctx8Add8, + Self::Sha256Ctx8AddBuffer511, + Self::Sha256Ctx8Finalize, + Self::Sha256Ctx8Init, + Self::Sha256Iv, + Self::Some1, + Self::Some16, + Self::Some32, + Self::Some64, + Self::Some8, + Self::Subtract16, + Self::Subtract32, + Self::Subtract64, + Self::Subtract8, + Self::Swu, + Self::Verify, + Self::Xor1, + Self::Xor16, + Self::Xor32, + Self::Xor64, + Self::Xor8, + Self::XorXor1, + Self::XorXor16, + Self::XorXor32, + Self::XorXor64, + Self::XorXor8, + ]; +} + impl Jet for Core { type Environment = (); diff --git a/src/jet/init/elements.rs b/src/jet/init/elements.rs index 30a7332a..ef40b6db 100644 --- a/src/jet/init/elements.rs +++ b/src/jet/init/elements.rs @@ -13,7 +13,7 @@ use std::{fmt, str}; use crate::jet::elements::ElementsEnv; use simplicity_sys::CElementsTxEnv; -/// Elements jet family +/// The Elements jet family. #[derive(Copy, Clone, PartialEq, Eq, PartialOrd, Ord, Debug, Hash)] pub enum Elements { Add16, @@ -487,6 +487,481 @@ pub enum Elements { XorXor8, } +impl Elements { + /// Array of all Elements jets. + pub const ALL: [Self; 469] = [ + Self::Add16, + Self::Add32, + Self::Add64, + Self::Add8, + Self::All16, + Self::All32, + Self::All64, + Self::All8, + Self::And1, + Self::And16, + Self::And32, + Self::And64, + Self::And8, + Self::AnnexHash, + Self::AssetAmountHash, + Self::Bip0340Verify, + Self::BuildTapbranch, + Self::BuildTapleafSimplicity, + Self::CalculateAsset, + Self::CalculateConfidentialToken, + Self::CalculateExplicitToken, + Self::CalculateIssuanceEntropy, + Self::Ch1, + Self::Ch16, + Self::Ch32, + Self::Ch64, + Self::Ch8, + Self::CheckLockDistance, + Self::CheckLockDuration, + Self::CheckLockHeight, + Self::CheckLockTime, + Self::CheckSigVerify, + Self::Complement1, + Self::Complement16, + Self::Complement32, + Self::Complement64, + Self::Complement8, + Self::CurrentAmount, + Self::CurrentAnnexHash, + Self::CurrentAsset, + Self::CurrentIndex, + Self::CurrentIssuanceAssetAmount, + Self::CurrentIssuanceAssetProof, + Self::CurrentIssuanceTokenAmount, + Self::CurrentIssuanceTokenProof, + Self::CurrentNewIssuanceContract, + Self::CurrentPegin, + Self::CurrentPrevOutpoint, + Self::CurrentReissuanceBlinding, + Self::CurrentReissuanceEntropy, + Self::CurrentScriptHash, + Self::CurrentScriptSigHash, + Self::CurrentSequence, + Self::Decompress, + Self::Decrement16, + Self::Decrement32, + Self::Decrement64, + Self::Decrement8, + Self::DivMod128_64, + Self::DivMod16, + Self::DivMod32, + Self::DivMod64, + Self::DivMod8, + Self::Divide16, + Self::Divide32, + Self::Divide64, + Self::Divide8, + Self::Divides16, + Self::Divides32, + Self::Divides64, + Self::Divides8, + Self::Eq1, + Self::Eq16, + Self::Eq256, + Self::Eq32, + Self::Eq64, + Self::Eq8, + Self::FeAdd, + Self::FeInvert, + Self::FeIsOdd, + Self::FeIsZero, + Self::FeMultiply, + Self::FeMultiplyBeta, + Self::FeNegate, + Self::FeNormalize, + Self::FeSquare, + Self::FeSquareRoot, + Self::FullAdd16, + Self::FullAdd32, + Self::FullAdd64, + Self::FullAdd8, + Self::FullDecrement16, + Self::FullDecrement32, + Self::FullDecrement64, + Self::FullDecrement8, + Self::FullIncrement16, + Self::FullIncrement32, + Self::FullIncrement64, + Self::FullIncrement8, + Self::FullLeftShift16_1, + Self::FullLeftShift16_2, + Self::FullLeftShift16_4, + Self::FullLeftShift16_8, + Self::FullLeftShift32_1, + Self::FullLeftShift32_16, + Self::FullLeftShift32_2, + Self::FullLeftShift32_4, + Self::FullLeftShift32_8, + Self::FullLeftShift64_1, + Self::FullLeftShift64_16, + Self::FullLeftShift64_2, + Self::FullLeftShift64_32, + Self::FullLeftShift64_4, + Self::FullLeftShift64_8, + Self::FullLeftShift8_1, + Self::FullLeftShift8_2, + Self::FullLeftShift8_4, + Self::FullMultiply16, + Self::FullMultiply32, + Self::FullMultiply64, + Self::FullMultiply8, + Self::FullRightShift16_1, + Self::FullRightShift16_2, + Self::FullRightShift16_4, + Self::FullRightShift16_8, + Self::FullRightShift32_1, + Self::FullRightShift32_16, + Self::FullRightShift32_2, + Self::FullRightShift32_4, + Self::FullRightShift32_8, + Self::FullRightShift64_1, + Self::FullRightShift64_16, + Self::FullRightShift64_2, + Self::FullRightShift64_32, + Self::FullRightShift64_4, + Self::FullRightShift64_8, + Self::FullRightShift8_1, + Self::FullRightShift8_2, + Self::FullRightShift8_4, + Self::FullSubtract16, + Self::FullSubtract32, + Self::FullSubtract64, + Self::FullSubtract8, + Self::GeIsOnCurve, + Self::GeNegate, + Self::GejAdd, + Self::GejDouble, + Self::GejEquiv, + Self::GejGeAdd, + Self::GejGeAddEx, + Self::GejGeEquiv, + Self::GejInfinity, + Self::GejIsInfinity, + Self::GejIsOnCurve, + Self::GejNegate, + Self::GejNormalize, + Self::GejRescale, + Self::GejXEquiv, + Self::GejYIsOdd, + Self::Generate, + Self::GenesisBlockHash, + Self::HashToCurve, + Self::High1, + Self::High16, + Self::High32, + Self::High64, + Self::High8, + Self::Increment16, + Self::Increment32, + Self::Increment64, + Self::Increment8, + Self::InputAmount, + Self::InputAmountsHash, + Self::InputAnnexHash, + Self::InputAnnexesHash, + Self::InputAsset, + Self::InputHash, + Self::InputOutpointsHash, + Self::InputPegin, + Self::InputPrevOutpoint, + Self::InputScriptHash, + Self::InputScriptSigHash, + Self::InputScriptSigsHash, + Self::InputScriptsHash, + Self::InputSequence, + Self::InputSequencesHash, + Self::InputUtxoHash, + Self::InputUtxosHash, + Self::InputsHash, + Self::InternalKey, + Self::IsOne16, + Self::IsOne32, + Self::IsOne64, + Self::IsOne8, + Self::IsZero16, + Self::IsZero32, + Self::IsZero64, + Self::IsZero8, + Self::Issuance, + Self::IssuanceAsset, + Self::IssuanceAssetAmount, + Self::IssuanceAssetAmountsHash, + Self::IssuanceAssetProof, + Self::IssuanceBlindingEntropyHash, + Self::IssuanceEntropy, + Self::IssuanceHash, + Self::IssuanceRangeProofsHash, + Self::IssuanceToken, + Self::IssuanceTokenAmount, + Self::IssuanceTokenAmountsHash, + Self::IssuanceTokenProof, + Self::IssuancesHash, + Self::LbtcAsset, + Self::Le16, + Self::Le32, + Self::Le64, + Self::Le8, + Self::LeftExtend16_32, + Self::LeftExtend16_64, + Self::LeftExtend1_16, + Self::LeftExtend1_32, + Self::LeftExtend1_64, + Self::LeftExtend1_8, + Self::LeftExtend32_64, + Self::LeftExtend8_16, + Self::LeftExtend8_32, + Self::LeftExtend8_64, + Self::LeftPadHigh16_32, + Self::LeftPadHigh16_64, + Self::LeftPadHigh1_16, + Self::LeftPadHigh1_32, + Self::LeftPadHigh1_64, + Self::LeftPadHigh1_8, + Self::LeftPadHigh32_64, + Self::LeftPadHigh8_16, + Self::LeftPadHigh8_32, + Self::LeftPadHigh8_64, + Self::LeftPadLow16_32, + Self::LeftPadLow16_64, + Self::LeftPadLow1_16, + Self::LeftPadLow1_32, + Self::LeftPadLow1_64, + Self::LeftPadLow1_8, + Self::LeftPadLow32_64, + Self::LeftPadLow8_16, + Self::LeftPadLow8_32, + Self::LeftPadLow8_64, + Self::LeftRotate16, + Self::LeftRotate32, + Self::LeftRotate64, + Self::LeftRotate8, + Self::LeftShift16, + Self::LeftShift32, + Self::LeftShift64, + Self::LeftShift8, + Self::LeftShiftWith16, + Self::LeftShiftWith32, + Self::LeftShiftWith64, + Self::LeftShiftWith8, + Self::Leftmost16_1, + Self::Leftmost16_2, + Self::Leftmost16_4, + Self::Leftmost16_8, + Self::Leftmost32_1, + Self::Leftmost32_16, + Self::Leftmost32_2, + Self::Leftmost32_4, + Self::Leftmost32_8, + Self::Leftmost64_1, + Self::Leftmost64_16, + Self::Leftmost64_2, + Self::Leftmost64_32, + Self::Leftmost64_4, + Self::Leftmost64_8, + Self::Leftmost8_1, + Self::Leftmost8_2, + Self::Leftmost8_4, + Self::LinearCombination1, + Self::LinearVerify1, + Self::LockTime, + Self::Low1, + Self::Low16, + Self::Low32, + Self::Low64, + Self::Low8, + Self::Lt16, + Self::Lt32, + Self::Lt64, + Self::Lt8, + Self::Maj1, + Self::Maj16, + Self::Maj32, + Self::Maj64, + Self::Maj8, + Self::Max16, + Self::Max32, + Self::Max64, + Self::Max8, + Self::Median16, + Self::Median32, + Self::Median64, + Self::Median8, + Self::Min16, + Self::Min32, + Self::Min64, + Self::Min8, + Self::Modulo16, + Self::Modulo32, + Self::Modulo64, + Self::Modulo8, + Self::Multiply16, + Self::Multiply32, + Self::Multiply64, + Self::Multiply8, + Self::Negate16, + Self::Negate32, + Self::Negate64, + Self::Negate8, + Self::NewIssuanceContract, + Self::NonceHash, + Self::NumInputs, + Self::NumOutputs, + Self::One16, + Self::One32, + Self::One64, + Self::One8, + Self::Or1, + Self::Or16, + Self::Or32, + Self::Or64, + Self::Or8, + Self::OutpointHash, + Self::OutputAmount, + Self::OutputAmountsHash, + Self::OutputAsset, + Self::OutputHash, + Self::OutputIsFee, + Self::OutputNonce, + Self::OutputNoncesHash, + Self::OutputNullDatum, + Self::OutputRangeProof, + Self::OutputRangeProofsHash, + Self::OutputScriptHash, + Self::OutputScriptsHash, + Self::OutputSurjectionProof, + Self::OutputSurjectionProofsHash, + Self::OutputsHash, + Self::ParseLock, + Self::ParseSequence, + Self::PointVerify1, + Self::ReissuanceBlinding, + Self::ReissuanceEntropy, + Self::RightExtend16_32, + Self::RightExtend16_64, + Self::RightExtend32_64, + Self::RightExtend8_16, + Self::RightExtend8_32, + Self::RightExtend8_64, + Self::RightPadHigh16_32, + Self::RightPadHigh16_64, + Self::RightPadHigh1_16, + Self::RightPadHigh1_32, + Self::RightPadHigh1_64, + Self::RightPadHigh1_8, + Self::RightPadHigh32_64, + Self::RightPadHigh8_16, + Self::RightPadHigh8_32, + Self::RightPadHigh8_64, + Self::RightPadLow16_32, + Self::RightPadLow16_64, + Self::RightPadLow1_16, + Self::RightPadLow1_32, + Self::RightPadLow1_64, + Self::RightPadLow1_8, + Self::RightPadLow32_64, + Self::RightPadLow8_16, + Self::RightPadLow8_32, + Self::RightPadLow8_64, + Self::RightRotate16, + Self::RightRotate32, + Self::RightRotate64, + Self::RightRotate8, + Self::RightShift16, + Self::RightShift32, + Self::RightShift64, + Self::RightShift8, + Self::RightShiftWith16, + Self::RightShiftWith32, + Self::RightShiftWith64, + Self::RightShiftWith8, + Self::Rightmost16_1, + Self::Rightmost16_2, + Self::Rightmost16_4, + Self::Rightmost16_8, + Self::Rightmost32_1, + Self::Rightmost32_16, + Self::Rightmost32_2, + Self::Rightmost32_4, + Self::Rightmost32_8, + Self::Rightmost64_1, + Self::Rightmost64_16, + Self::Rightmost64_2, + Self::Rightmost64_32, + Self::Rightmost64_4, + Self::Rightmost64_8, + Self::Rightmost8_1, + Self::Rightmost8_2, + Self::Rightmost8_4, + Self::ScalarAdd, + Self::ScalarInvert, + Self::ScalarIsZero, + Self::ScalarMultiply, + Self::ScalarMultiplyLambda, + Self::ScalarNegate, + Self::ScalarNormalize, + Self::ScalarSquare, + Self::Scale, + Self::ScriptCMR, + Self::Sha256Block, + Self::Sha256Ctx8Add1, + Self::Sha256Ctx8Add128, + Self::Sha256Ctx8Add16, + Self::Sha256Ctx8Add2, + Self::Sha256Ctx8Add256, + Self::Sha256Ctx8Add32, + Self::Sha256Ctx8Add4, + Self::Sha256Ctx8Add512, + Self::Sha256Ctx8Add64, + Self::Sha256Ctx8Add8, + Self::Sha256Ctx8AddBuffer511, + Self::Sha256Ctx8Finalize, + Self::Sha256Ctx8Init, + Self::Sha256Iv, + Self::SigAllHash, + Self::Some1, + Self::Some16, + Self::Some32, + Self::Some64, + Self::Some8, + Self::Subtract16, + Self::Subtract32, + Self::Subtract64, + Self::Subtract8, + Self::Swu, + Self::TapEnvHash, + Self::TapleafHash, + Self::TapleafVersion, + Self::Tappath, + Self::TappathHash, + Self::TotalFee, + Self::TransactionId, + Self::TxHash, + Self::TxIsFinal, + Self::TxLockDistance, + Self::TxLockDuration, + Self::TxLockHeight, + Self::TxLockTime, + Self::Verify, + Self::Version, + Self::Xor1, + Self::Xor16, + Self::Xor32, + Self::Xor64, + Self::Xor8, + Self::XorXor1, + Self::XorXor16, + Self::XorXor32, + Self::XorXor64, + Self::XorXor8, + ]; +} + impl Jet for Elements { type Environment = ElementsEnv>;