forked from mirror/go-ethereum
parent
c3f6c322c0
commit
5fdf72b1ab
@ -1,5 +1,29 @@ |
||||
package api |
||||
|
||||
import ( |
||||
"encoding/json" |
||||
|
||||
"github.com/ethereum/go-ethereum/rpc/shared" |
||||
) |
||||
|
||||
type Sha3Args struct { |
||||
Data string |
||||
} |
||||
|
||||
func (args *Sha3Args) UnmarshalJSON(b []byte) (err error) { |
||||
var obj []interface{} |
||||
if err := json.Unmarshal(b, &obj); err != nil { |
||||
return shared.NewDecodeParamError(err.Error()) |
||||
} |
||||
|
||||
if len(obj) < 1 { |
||||
return shared.NewInsufficientParamsError(len(obj), 1) |
||||
} |
||||
|
||||
argstr, ok := obj[0].(string) |
||||
if !ok { |
||||
return shared.NewInvalidTypeError("data", "is not a string") |
||||
} |
||||
args.Data = argstr |
||||
return nil |
||||
} |
||||
|
Loading…
Reference in new issue