@@ -5,7 +5,14 @@ import cats.implicits._
5
5
import io .iohk .ethereum .consensus .blocks .BlockGenerator
6
6
import io .iohk .ethereum .domain .{Account , Address , Block , Blockchain , UInt256 }
7
7
import io .iohk .ethereum .jsonrpc .ProofService .StorageValueProof .asRlpSerializedNode
8
- import io .iohk .ethereum .jsonrpc .ProofService .{GetProofRequest , GetProofResponse , ProofAccount , StorageProof , StorageProofKey , StorageValueProof }
8
+ import io .iohk .ethereum .jsonrpc .ProofService .{
9
+ GetProofRequest ,
10
+ GetProofResponse ,
11
+ ProofAccount ,
12
+ StorageProof ,
13
+ StorageProofKey ,
14
+ StorageValueProof
15
+ }
9
16
import io .iohk .ethereum .mpt .{MptNode , MptTraversals }
10
17
import monix .eval .Task
11
18
@@ -30,6 +37,7 @@ object ProofService {
30
37
val value : BigInt
31
38
val proof : Seq [ByteString ]
32
39
}
40
+
33
41
/**
34
42
* Object proving a relationship of a storage value to an account's storageHash
35
43
*
@@ -40,13 +48,16 @@ object ProofService {
40
48
case class StorageValueProof (
41
49
key : StorageProofKey ,
42
50
value : BigInt = BigInt (0 ),
43
- proof : Seq [ByteString ] = Seq .empty[MptNode ].map(asRlpSerializedNode)) extends StorageProof
51
+ proof : Seq [ByteString ] = Seq .empty[MptNode ].map(asRlpSerializedNode)
52
+ ) extends StorageProof
44
53
45
54
object StorageValueProof {
46
55
def apply (position : BigInt , value : Option [BigInt ], proof : Option [Vector [MptNode ]]): StorageValueProof =
47
56
(value, proof) match {
48
- case (Some (value), Some (proof)) => new StorageValueProof (key = StorageProofKey (position), value = value, proof = proof.map(asRlpSerializedNode))
49
- case (None , Some (proof)) => new StorageValueProof (key = StorageProofKey (position), proof = proof.map(asRlpSerializedNode))
57
+ case (Some (value), Some (proof)) =>
58
+ new StorageValueProof (key = StorageProofKey (position), value = value, proof = proof.map(asRlpSerializedNode))
59
+ case (None , Some (proof)) =>
60
+ new StorageValueProof (key = StorageProofKey (position), proof = proof.map(asRlpSerializedNode))
50
61
case (Some (value), None ) => new StorageValueProof (key = StorageProofKey (position), value = value)
51
62
case (None , None ) => new StorageValueProof (key = StorageProofKey (position))
52
63
}
0 commit comments