@@ -123,6 +123,15 @@ pub enum DefaultFunction {
123123 // BLS Multi-Scalar Multiplication
124124 Bls12_381_G1_MultiScalarMul = 92 ,
125125 Bls12_381_G2_MultiScalarMul = 93 ,
126+
127+ // Value builtins
128+ InsertCoin = 94 ,
129+ LookupCoin = 95 ,
130+ UnionValue = 96 ,
131+ ValueContains = 97 ,
132+ ValueData = 98 ,
133+ UnValueData = 99 ,
134+ ScaleValue = 100 ,
126135}
127136
128137impl DefaultFunction {
@@ -222,6 +231,13 @@ impl DefaultFunction {
222231 DefaultFunction :: IndexArray => 1 ,
223232 DefaultFunction :: Bls12_381_G1_MultiScalarMul => 0 ,
224233 DefaultFunction :: Bls12_381_G2_MultiScalarMul => 0 ,
234+ DefaultFunction :: InsertCoin => 0 ,
235+ DefaultFunction :: LookupCoin => 0 ,
236+ DefaultFunction :: UnionValue => 0 ,
237+ DefaultFunction :: ValueContains => 0 ,
238+ DefaultFunction :: ValueData => 0 ,
239+ DefaultFunction :: UnValueData => 0 ,
240+ DefaultFunction :: ScaleValue => 0 ,
225241 }
226242 }
227243
@@ -321,6 +337,13 @@ impl DefaultFunction {
321337 DefaultFunction :: IndexArray => 2 ,
322338 DefaultFunction :: Bls12_381_G1_MultiScalarMul => 2 ,
323339 DefaultFunction :: Bls12_381_G2_MultiScalarMul => 2 ,
340+ DefaultFunction :: InsertCoin => 4 ,
341+ DefaultFunction :: LookupCoin => 3 ,
342+ DefaultFunction :: UnionValue => 2 ,
343+ DefaultFunction :: ValueContains => 2 ,
344+ DefaultFunction :: ValueData => 1 ,
345+ DefaultFunction :: UnValueData => 1 ,
346+ DefaultFunction :: ScaleValue => 2 ,
324347 }
325348 }
326349
@@ -441,30 +464,17 @@ impl DefaultFunction {
441464 | Ripemd_160
442465 ) ;
443466
444- // batch6: van Rossem (PV 11) — ExpModInteger, DropList, LengthOfArray, ListToArray,
445- // IndexArray, BLS MSM, and Value builtins (once added).
446- let batch6 = matches ! (
447- self ,
448- ExpModInteger
449- | DropList
450- | LengthOfArray
451- | ListToArray
452- | IndexArray
453- | Bls12_381_G1_MultiScalarMul
454- | Bls12_381_G2_MultiScalarMul
455- ) ;
456-
457467 match plutus_version {
458468 PlutusVersion :: V1 => {
459469 if pv >= 11 {
460- batch1 || batch2 || batch3 || batch4a || batch4b || batch5 || batch6
470+ true
461471 } else {
462472 batch1
463473 }
464474 }
465475 PlutusVersion :: V2 => {
466476 if pv >= 11 {
467- batch1 || batch2 || batch3 || batch4a || batch4b || batch5 || batch6
477+ true
468478 } else if pv >= 10 {
469479 batch1 || batch2 || batch3 || batch4b
470480 } else if pv >= 8 {
@@ -476,7 +486,7 @@ impl DefaultFunction {
476486 }
477487 PlutusVersion :: V3 => {
478488 if pv >= 11 {
479- batch1 || batch2 || batch3 || batch4a || batch4b || batch5 || batch6
489+ true
480490 } else if pv >= 10 {
481491 batch1 || batch2 || batch3 || batch4a || batch4b || batch5
482492 } else {
0 commit comments