| 
									
										
										
										
											2016-12-06 02:16:03 +01:00
										 |  |  | // Copyright 2016 The go-ethereum Authors | 
					
						
							|  |  |  | // This file is part of the go-ethereum library. | 
					
						
							|  |  |  | // | 
					
						
							|  |  |  | // The go-ethereum library is free software: you can redistribute it and/or modify | 
					
						
							|  |  |  | // it under the terms of the GNU Lesser General Public License as published by | 
					
						
							|  |  |  | // the Free Software Foundation, either version 3 of the License, or | 
					
						
							|  |  |  | // (at your option) any later version. | 
					
						
							|  |  |  | // | 
					
						
							|  |  |  | // The go-ethereum library is distributed in the hope that it will be useful, | 
					
						
							|  |  |  | // but WITHOUT ANY WARRANTY; without even the implied warranty of | 
					
						
							|  |  |  | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | 
					
						
							|  |  |  | // GNU Lesser General Public License for more details. | 
					
						
							|  |  |  | // | 
					
						
							|  |  |  | // You should have received a copy of the GNU Lesser General Public License | 
					
						
							|  |  |  | // along with the go-ethereum library. If not, see <http://www.gnu.org/licenses/>. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | package vm | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | import ( | 
					
						
							|  |  |  | 	"math/big" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	"github.com/ethereum/go-ethereum/common" | 
					
						
							| 
									
										
										
										
											2017-01-05 14:03:50 +01:00
										 |  |  | 	"github.com/ethereum/go-ethereum/core/types" | 
					
						
							| 
									
										
										
										
											2016-12-06 02:16:03 +01:00
										 |  |  | ) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | func NoopCanTransfer(db StateDB, from common.Address, balance *big.Int) bool { | 
					
						
							|  |  |  | 	return true | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | func NoopTransfer(db StateDB, from, to common.Address, amount *big.Int) {} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | type NoopEVMCallContext struct{} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | func (NoopEVMCallContext) Call(caller ContractRef, addr common.Address, data []byte, gas, value *big.Int) ([]byte, error) { | 
					
						
							|  |  |  | 	return nil, nil | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | func (NoopEVMCallContext) CallCode(caller ContractRef, addr common.Address, data []byte, gas, value *big.Int) ([]byte, error) { | 
					
						
							|  |  |  | 	return nil, nil | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | func (NoopEVMCallContext) Create(caller ContractRef, data []byte, gas, value *big.Int) ([]byte, common.Address, error) { | 
					
						
							|  |  |  | 	return nil, common.Address{}, nil | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | func (NoopEVMCallContext) DelegateCall(me ContractRef, addr common.Address, data []byte, gas *big.Int) ([]byte, error) { | 
					
						
							|  |  |  | 	return nil, nil | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | type NoopStateDB struct{} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | func (NoopStateDB) GetAccount(common.Address) Account                 { return nil } | 
					
						
							|  |  |  | func (NoopStateDB) CreateAccount(common.Address) Account              { return nil } | 
					
						
							|  |  |  | func (NoopStateDB) SubBalance(common.Address, *big.Int)               {} | 
					
						
							|  |  |  | func (NoopStateDB) AddBalance(common.Address, *big.Int)               {} | 
					
						
							|  |  |  | func (NoopStateDB) GetBalance(common.Address) *big.Int                { return nil } | 
					
						
							|  |  |  | func (NoopStateDB) GetNonce(common.Address) uint64                    { return 0 } | 
					
						
							|  |  |  | func (NoopStateDB) SetNonce(common.Address, uint64)                   {} | 
					
						
							|  |  |  | func (NoopStateDB) GetCodeHash(common.Address) common.Hash            { return common.Hash{} } | 
					
						
							|  |  |  | func (NoopStateDB) GetCode(common.Address) []byte                     { return nil } | 
					
						
							|  |  |  | func (NoopStateDB) SetCode(common.Address, []byte)                    {} | 
					
						
							|  |  |  | func (NoopStateDB) GetCodeSize(common.Address) int                    { return 0 } | 
					
						
							|  |  |  | func (NoopStateDB) AddRefund(*big.Int)                                {} | 
					
						
							|  |  |  | func (NoopStateDB) GetRefund() *big.Int                               { return nil } | 
					
						
							|  |  |  | func (NoopStateDB) GetState(common.Address, common.Hash) common.Hash  { return common.Hash{} } | 
					
						
							|  |  |  | func (NoopStateDB) SetState(common.Address, common.Hash, common.Hash) {} | 
					
						
							|  |  |  | func (NoopStateDB) Suicide(common.Address) bool                       { return false } | 
					
						
							|  |  |  | func (NoopStateDB) HasSuicided(common.Address) bool                   { return false } | 
					
						
							|  |  |  | func (NoopStateDB) Exist(common.Address) bool                         { return false } | 
					
						
							|  |  |  | func (NoopStateDB) Empty(common.Address) bool                         { return false } | 
					
						
							|  |  |  | func (NoopStateDB) RevertToSnapshot(int)                              {} | 
					
						
							|  |  |  | func (NoopStateDB) Snapshot() int                                     { return 0 } | 
					
						
							| 
									
										
										
										
											2017-01-05 14:03:50 +01:00
										 |  |  | func (NoopStateDB) AddLog(*types.Log)                                 {} | 
					
						
							| 
									
										
										
										
											2017-01-17 11:19:50 +00:00
										 |  |  | func (NoopStateDB) AddPreimage(common.Hash, []byte)                   {} |