@@ -373,12 +373,12 @@ pub fn parse<Ctx: ScriptContext>(
373
373
tokens,
374
374
// pubkey
375
375
Tk :: Bytes33 ( pk) => {
376
- let ret = Ctx :: Key :: from_slice( pk)
376
+ let ret = Ctx :: Key :: from_slice( & pk)
377
377
. map_err( |e| Error :: PubKeyCtxError ( e, Ctx :: name_str( ) ) ) ?;
378
378
term. reduce0( Terminal :: PkK ( ret) ) ?
379
379
} ,
380
380
Tk :: Bytes65 ( pk) => {
381
- let ret = Ctx :: Key :: from_slice( pk)
381
+ let ret = Ctx :: Key :: from_slice( & pk)
382
382
. map_err( |e| Error :: PubKeyCtxError ( e, Ctx :: name_str( ) ) ) ?;
383
383
term. reduce0( Terminal :: PkK ( ret) ) ?
384
384
} ,
@@ -395,7 +395,7 @@ pub fn parse<Ctx: ScriptContext>(
395
395
// after bytes32 means bytes32 is in a hashlock
396
396
// Finally for the first case, K being parsed as a solo expression is a Pk type
397
397
Tk :: Bytes32 ( pk) => {
398
- let ret = Ctx :: Key :: from_slice( pk) . map_err( |e| Error :: PubKeyCtxError ( e, Ctx :: name_str( ) ) ) ?;
398
+ let ret = Ctx :: Key :: from_slice( & pk) . map_err( |e| Error :: PubKeyCtxError ( e, Ctx :: name_str( ) ) ) ?;
399
399
term. reduce0( Terminal :: PkK ( ret) ) ?
400
400
} ,
401
401
// checksig
@@ -414,20 +414,20 @@ pub fn parse<Ctx: ScriptContext>(
414
414
tokens,
415
415
Tk :: Dup => {
416
416
term. reduce0( Terminal :: RawPkH (
417
- hash160:: Hash :: from_slice ( hash) . expect ( "valid size" )
417
+ hash160:: Hash :: from_byte_array ( hash)
418
418
) ) ?
419
419
} ,
420
420
Tk :: Verify , Tk :: Equal , Tk :: Num ( 32 ) , Tk :: Size => {
421
421
non_term. push( NonTerm :: Verify ) ;
422
422
term. reduce0( Terminal :: Hash160 (
423
- hash160:: Hash :: from_slice ( hash) . expect ( "valid size" )
423
+ hash160:: Hash :: from_byte_array ( hash)
424
424
) ) ?
425
425
} ,
426
426
) ,
427
427
Tk :: Ripemd160 , Tk :: Verify , Tk :: Equal , Tk :: Num ( 32 ) , Tk :: Size => {
428
428
non_term. push( NonTerm :: Verify ) ;
429
429
term. reduce0( Terminal :: Ripemd160 (
430
- ripemd160:: Hash :: from_slice ( hash) . expect ( "valid size" )
430
+ ripemd160:: Hash :: from_byte_array ( hash)
431
431
) ) ?
432
432
} ,
433
433
) ,
@@ -437,13 +437,13 @@ pub fn parse<Ctx: ScriptContext>(
437
437
Tk :: Sha256 , Tk :: Verify , Tk :: Equal , Tk :: Num ( 32 ) , Tk :: Size => {
438
438
non_term. push( NonTerm :: Verify ) ;
439
439
term. reduce0( Terminal :: Sha256 (
440
- sha256:: Hash :: from_slice ( hash) . expect ( "valid size" )
440
+ sha256:: Hash :: from_byte_array ( hash)
441
441
) ) ?
442
442
} ,
443
443
Tk :: Hash256 , Tk :: Verify , Tk :: Equal , Tk :: Num ( 32 ) , Tk :: Size => {
444
444
non_term. push( NonTerm :: Verify ) ;
445
445
term. reduce0( Terminal :: Hash256 (
446
- hash256:: Hash :: from_slice ( hash) . expect ( "valid size" )
446
+ hash256:: Hash :: from_byte_array ( hash)
447
447
) ) ?
448
448
} ,
449
449
) ,
@@ -480,14 +480,14 @@ pub fn parse<Ctx: ScriptContext>(
480
480
Tk :: Equal ,
481
481
Tk :: Num ( 32 ) ,
482
482
Tk :: Size => term. reduce0( Terminal :: Sha256 (
483
- sha256:: Hash :: from_slice ( hash) . expect ( "valid size" )
483
+ sha256:: Hash :: from_byte_array ( hash)
484
484
) ) ?,
485
485
Tk :: Hash256 ,
486
486
Tk :: Verify ,
487
487
Tk :: Equal ,
488
488
Tk :: Num ( 32 ) ,
489
489
Tk :: Size => term. reduce0( Terminal :: Hash256 (
490
- hash256:: Hash :: from_slice ( hash) . expect ( "valid size" )
490
+ hash256:: Hash :: from_byte_array ( hash)
491
491
) ) ?,
492
492
) ,
493
493
Tk :: Hash20 ( hash) => match_token!(
@@ -497,14 +497,14 @@ pub fn parse<Ctx: ScriptContext>(
497
497
Tk :: Equal ,
498
498
Tk :: Num ( 32 ) ,
499
499
Tk :: Size => term. reduce0( Terminal :: Ripemd160 (
500
- ripemd160:: Hash :: from_slice ( hash) . expect ( "valid size" )
500
+ ripemd160:: Hash :: from_byte_array ( hash)
501
501
) ) ?,
502
502
Tk :: Hash160 ,
503
503
Tk :: Verify ,
504
504
Tk :: Equal ,
505
505
Tk :: Num ( 32 ) ,
506
506
Tk :: Size => term. reduce0( Terminal :: Hash160 (
507
- hash160:: Hash :: from_slice ( hash) . expect ( "valid size" )
507
+ hash160:: Hash :: from_byte_array ( hash)
508
508
) ) ?,
509
509
) ,
510
510
// thresholds
@@ -545,9 +545,9 @@ pub fn parse<Ctx: ScriptContext>(
545
545
for _ in 0 ..n {
546
546
match_token!(
547
547
tokens,
548
- Tk :: Bytes33 ( pk) => keys. push( <Ctx :: Key >:: from_slice( pk)
548
+ Tk :: Bytes33 ( pk) => keys. push( <Ctx :: Key >:: from_slice( & pk)
549
549
. map_err( |e| Error :: PubKeyCtxError ( e, Ctx :: name_str( ) ) ) ?) ,
550
- Tk :: Bytes65 ( pk) => keys. push( <Ctx :: Key >:: from_slice( pk)
550
+ Tk :: Bytes65 ( pk) => keys. push( <Ctx :: Key >:: from_slice( & pk)
551
551
. map_err( |e| Error :: PubKeyCtxError ( e, Ctx :: name_str( ) ) ) ?) ,
552
552
) ;
553
553
}
@@ -567,14 +567,14 @@ pub fn parse<Ctx: ScriptContext>(
567
567
while tokens. peek( ) == Some ( & Tk :: CheckSigAdd ) {
568
568
match_token!(
569
569
tokens,
570
- Tk :: CheckSigAdd , Tk :: Bytes32 ( pk) => keys. push( <Ctx :: Key >:: from_slice( pk)
570
+ Tk :: CheckSigAdd , Tk :: Bytes32 ( pk) => keys. push( <Ctx :: Key >:: from_slice( & pk)
571
571
. map_err( |e| Error :: PubKeyCtxError ( e, Ctx :: name_str( ) ) ) ?) ,
572
572
) ;
573
573
}
574
574
// Last key must be with a CheckSig
575
575
match_token!(
576
576
tokens,
577
- Tk :: CheckSig , Tk :: Bytes32 ( pk) => keys. push( <Ctx :: Key >:: from_slice( pk)
577
+ Tk :: CheckSig , Tk :: Bytes32 ( pk) => keys. push( <Ctx :: Key >:: from_slice( & pk)
578
578
. map_err( |e| Error :: PubKeyCtxError ( e, Ctx :: name_str( ) ) ) ?) ,
579
579
) ;
580
580
keys. reverse( ) ;
0 commit comments