+++ /dev/null
-// 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 common
-
-import (
- "path/filepath"
- "runtime"
-)
-
-const (
- DefaultIPCSocket = "geth.ipc" // Default (relative) name of the IPC RPC socket
- DefaultHTTPHost = "localhost" // Default host interface for the HTTP RPC server
- DefaultHTTPPort = 8545 // Default TCP port for the HTTP RPC server
- DefaultWSHost = "localhost" // Default host interface for the websocket RPC server
- DefaultWSPort = 8546 // Default TCP port for the websocket RPC server
-)
-
-// DefaultDataDir is the default data directory to use for the databases and other
-// persistence requirements.
-func DefaultDataDir() string {
- // Try to place the data folder in the user's home dir
- home := HomeDir()
- if home != "" {
- if runtime.GOOS == "darwin" {
- return filepath.Join(home, "Library", "Ethereum")
- } else if runtime.GOOS == "windows" {
- return filepath.Join(home, "AppData", "Roaming", "Ethereum")
- } else {
- return filepath.Join(home, ".ethereum")
- }
- }
- // As we cannot guess a stable location, return empty and handle later
- return ""
-}
-// Copyright 2015 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 common
+
import (
_ "encoding/hex"
func EmptyHash(h Hash) bool {
return h == Hash{}
-}
-
-/////////// Address
-/*
-func BytesToAddress(b []byte) Address {
- var a Address
- a.SetBytes(b)
- return a
-}
-func StringToAddress(s string) Address { return BytesToAddress([]byte(s)) }
-func BigToAddress(b *big.Int) Address { return BytesToAddress(b.Bytes()) }
-func HexToAddress(s string) Address { return BytesToAddress(FromHex(s)) }
-
-// IsHexAddress verifies whether a string can represent a valid hex-encoded
-// Ethereum address or not.
-func IsHexAddress(s string) bool {
- if len(s) == 2+2*AddressLength && IsHex(s) {
- return true
- }
- if len(s) == 2*AddressLength && IsHex("0x"+s) {
- return true
- }
- return false
-}
-
-// Get the string representation of the underlying address
-func (a Address) Str() string { return string(a[:]) }
-func (a Address) Bytes() []byte { return a[:] }
-func (a Address) Big() *big.Int { return Bytes2Big(a[:]) }
-func (a Address) Hash() Hash { return BytesToHash(a[:]) }
-
-// Sets the address to the value of b. If b is larger than len(a) it will panic
-func (a *Address) SetBytes(b []byte) {
- if len(b) > len(a) {
- b = b[len(b)-AddressLength:]
- }
- copy(a[AddressLength-len(b):], b)
-}
-
-// Set string `s` to a. If s is larger than len(a) it will panic
-func (a *Address) SetString(s string) { a.SetBytes([]byte(s)) }
-
-// Sets a to other
-func (a *Address) Set(other Address) {
- for i, v := range other {
- a[i] = v
- }
-}
-
-// Serialize given address to JSON
-func (a Address) MarshalJSON() ([]byte, error) {
- return json.Marshal(a.Str())
-}
-
-// Parse address from raw json data
-func (a *Address) UnmarshalJSON(data []byte) error {
- if len(data) > 2 && data[0] == '"' && data[len(data)-1] == '"' {
- data = data[1 : len(data)-1]
- }
-
- if len(data) != AddressLength {
- return fmt.Errorf("Invalid address length, expected %d got %d bytes", AddressLength, len(data))
- }
-
- _, res, err := AddressDecode("bm", string(data))
- if err != nil {
- return err
- }
-
- if len(res) != PubkeyHashLength {
- return fmt.Errorf("Invalid address")
- }
- a.Set(BytesToAddress(data))
- return nil
-}
-
-// PP Pretty Prints a byte slice in the following format:
-// hex(value[:4])...(hex[len(value)-4:])
-func PP(value []byte) string {
- if len(value) <= 8 {
- return Bytes2Hex(value)
- }
-
- return fmt.Sprintf("%x...%x", value[:4], value[len(value)-4])
-}
-*/
\ No newline at end of file
+}
\ No newline at end of file