(addr comm.Address)
| 87 | } |
| 88 | |
| 89 | func (self *CacheDB) GetContract(addr comm.Address) (*payload.DeployCode, error) { |
| 90 | value, err := self.get(common.ST_CONTRACT, addr[:]) |
| 91 | if err != nil { |
| 92 | return nil, err |
| 93 | } |
| 94 | |
| 95 | if len(value) == 0 { |
| 96 | return nil, nil |
| 97 | } |
| 98 | |
| 99 | contract := new(payload.DeployCode) |
| 100 | if err := contract.Deserialization(comm.NewZeroCopySource(value)); err != nil { |
| 101 | return nil, err |
| 102 | } |
| 103 | return contract, nil |
| 104 | } |
| 105 | |
| 106 | func (self *CacheDB) PutContract(contract *payload.DeployCode) { |
| 107 | address := contract.Address() |
no test coverage detected