2019-02-13 18:18:47 +00:00
|
|
|
package wrappers
|
|
|
|
|
|
|
|
import (
|
|
|
|
"github.com/CityOfZion/neo-go/pkg/crypto"
|
|
|
|
)
|
|
|
|
|
2019-09-03 14:51:37 +00:00
|
|
|
// ValidateAddressResponse represents response to validate address call.
|
2019-02-13 18:18:47 +00:00
|
|
|
type ValidateAddressResponse struct {
|
|
|
|
Address interface{} `json:"address"`
|
|
|
|
IsValid bool `json:"isvalid"`
|
|
|
|
}
|
|
|
|
|
|
|
|
// ValidateAddress verifies that the address is a correct NEO address
|
|
|
|
// see https://docs.neo.org/en-us/node/cli/2.9.4/api/validateaddress.html
|
|
|
|
func ValidateAddress(address interface{}) ValidateAddressResponse {
|
|
|
|
resp := ValidateAddressResponse{Address: address}
|
|
|
|
if address, ok := address.(string); ok {
|
|
|
|
_, err := crypto.Uint160DecodeAddress(address)
|
|
|
|
resp.IsValid = err == nil
|
|
|
|
}
|
|
|
|
return resp
|
|
|
|
}
|