| 
									
										
										
										
											2017-03-27 11:52:39 +02:00
										 |  |  | // Code generated by github.com/fjl/gencodec. DO NOT EDIT. | 
					
						
							| 
									
										
										
										
											2017-03-02 14:03:33 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  | package core | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | import ( | 
					
						
							|  |  |  | 	"encoding/json" | 
					
						
							|  |  |  | 	"errors" | 
					
						
							|  |  |  | 	"math/big" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	"github.com/ethereum/go-ethereum/common" | 
					
						
							|  |  |  | 	"github.com/ethereum/go-ethereum/common/hexutil" | 
					
						
							|  |  |  | 	"github.com/ethereum/go-ethereum/common/math" | 
					
						
							|  |  |  | ) | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-03-27 11:52:39 +02:00
										 |  |  | func (g GenesisAccount) MarshalJSON() ([]byte, error) { | 
					
						
							| 
									
										
										
										
											2017-04-06 10:38:21 +02:00
										 |  |  | 	type GenesisAccount struct { | 
					
						
							|  |  |  | 		Code    hexutil.Bytes               `json:"code,omitempty"` | 
					
						
							|  |  |  | 		Storage map[common.Hash]common.Hash `json:"storage,omitempty"` | 
					
						
							|  |  |  | 		Balance *math.HexOrDecimal256       `json:"balance" gencodec:"required"` | 
					
						
							|  |  |  | 		Nonce   math.HexOrDecimal64         `json:"nonce,omitempty"` | 
					
						
							| 
									
										
										
										
											2017-03-02 14:03:33 +01:00
										 |  |  | 	} | 
					
						
							| 
									
										
										
										
											2017-04-06 10:38:21 +02:00
										 |  |  | 	var enc GenesisAccount | 
					
						
							| 
									
										
										
										
											2017-03-27 11:52:39 +02:00
										 |  |  | 	enc.Code = g.Code | 
					
						
							|  |  |  | 	enc.Storage = g.Storage | 
					
						
							| 
									
										
										
										
											2017-03-02 14:03:33 +01:00
										 |  |  | 	enc.Balance = (*math.HexOrDecimal256)(g.Balance) | 
					
						
							| 
									
										
										
										
											2017-03-27 11:52:39 +02:00
										 |  |  | 	enc.Nonce = math.HexOrDecimal64(g.Nonce) | 
					
						
							| 
									
										
										
										
											2017-03-02 14:03:33 +01:00
										 |  |  | 	return json.Marshal(&enc) | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | func (g *GenesisAccount) UnmarshalJSON(input []byte) error { | 
					
						
							| 
									
										
										
										
											2017-04-06 10:38:21 +02:00
										 |  |  | 	type GenesisAccount struct { | 
					
						
							|  |  |  | 		Code    hexutil.Bytes               `json:"code,omitempty"` | 
					
						
							|  |  |  | 		Storage map[common.Hash]common.Hash `json:"storage,omitempty"` | 
					
						
							|  |  |  | 		Balance *math.HexOrDecimal256       `json:"balance" gencodec:"required"` | 
					
						
							|  |  |  | 		Nonce   *math.HexOrDecimal64        `json:"nonce,omitempty"` | 
					
						
							| 
									
										
										
										
											2017-03-02 14:03:33 +01:00
										 |  |  | 	} | 
					
						
							| 
									
										
										
										
											2017-04-06 10:38:21 +02:00
										 |  |  | 	var dec GenesisAccount | 
					
						
							| 
									
										
										
										
											2017-03-02 14:03:33 +01:00
										 |  |  | 	if err := json.Unmarshal(input, &dec); err != nil { | 
					
						
							|  |  |  | 		return err | 
					
						
							|  |  |  | 	} | 
					
						
							|  |  |  | 	if dec.Code != nil { | 
					
						
							| 
									
										
										
										
											2017-04-06 10:38:21 +02:00
										 |  |  | 		g.Code = dec.Code | 
					
						
							| 
									
										
										
										
											2017-03-02 14:03:33 +01:00
										 |  |  | 	} | 
					
						
							|  |  |  | 	if dec.Storage != nil { | 
					
						
							| 
									
										
										
										
											2017-04-06 10:38:21 +02:00
										 |  |  | 		g.Storage = dec.Storage | 
					
						
							| 
									
										
										
										
											2017-03-02 14:03:33 +01:00
										 |  |  | 	} | 
					
						
							|  |  |  | 	if dec.Balance == nil { | 
					
						
							|  |  |  | 		return errors.New("missing required field 'balance' for GenesisAccount") | 
					
						
							|  |  |  | 	} | 
					
						
							| 
									
										
										
										
											2017-04-06 10:38:21 +02:00
										 |  |  | 	g.Balance = (*big.Int)(dec.Balance) | 
					
						
							| 
									
										
										
										
											2017-03-02 14:03:33 +01:00
										 |  |  | 	if dec.Nonce != nil { | 
					
						
							| 
									
										
										
										
											2017-04-06 10:38:21 +02:00
										 |  |  | 		g.Nonce = uint64(*dec.Nonce) | 
					
						
							| 
									
										
										
										
											2017-03-02 14:03:33 +01:00
										 |  |  | 	} | 
					
						
							|  |  |  | 	return nil | 
					
						
							|  |  |  | } |