// CreateAccount explicitly creates a state object. If a state object with the address
// already exists the balance is carried over to the new account.
//
// CreateAccount is called during the EVM CREATE operation. The situation might arise that
// a contract does the following:
//
//   1. sends funds to sha(account ++ (nonce + 1))
//   2. tx_create(sha(account ++ nonce)) (note that this gets the address of 1)
//
// Carrying over the balance ensures that Maner doesn't disappear.
CreateAccount explicitly creates a state object. If a state object with the address
already exists the balance is carried over to the new account.

CreateAccount is called during the EVM CREATE operation. The situation might arise that
a contract does the following.

1. sends funds to sha(account ++ (nonce + 1))
2. tx_create(sha(account ++ nonce)) (note that this gets the address of 1)

Carrying over the balance ensures that Maner doesn't disappear.
// CreateAccount explicitly creates a state object . If a state object with the address // already exists the balance is carried over to the new account . // // CreateAccount is called during the EVM CREATE operation . The situation might arise that // a contract does the following : // // 1 . sends funds to sha ( account ++ ( nonce + 1 )) // 2 . tx_create ( sha ( account ++ nonce )) ( note that this gets the address of 1 ) // // Carrying over the balance ensures that Maner doesn ' t disappear .
func (shard *StateDBManage) CreateAccount(cointyp string, addr common.Address) {
	statedb, err := shard.GetStateDb(cointyp, addr)
	if err != nil {
		log.Error("sharding_statedb", "sharding_CreateAccount:", err)
		return
	}
	statedb.CreateAccount(addr)
}
func ( shard * StateDBManage ) CreateAccount ( cointyp string , addr common . Address ) { statedb , err := shard . GetStateDb ( cointyp , addr ) if err != nil { log . Error ( " " , " " , err ) return } statedb . CreateAccount ( addr ) }
CreateAccount explicitly creates a state object.
CreateAccount explicitly creates a state object .