-
Notifications
You must be signed in to change notification settings - Fork 48
Open
Description
I am trying to serialize an AST object using gob with below function:
//Encodes an object in gob
func encodeToGob(object interface{}) (bytes.Buffer, error) {
var gobData bytes.Buffer
gob.Register(ast.StringToken{})
gob.Register(ast.Object{})
gob.Register(ast.Elements{})
gob.Register(ast.TemplateString{})
e := gob.NewEncoder(&gobData)
if err := e.Encode(object); err != nil {
fmt.Println("Err is:", err)
return gobData, err
} else {
return gobData, nil
}
}
encode works but when i try to decode with below function :
`func decodeGob(gobData bytes.Buffer, targetType interface{}) error {
gob.Register(ast.StringToken{})
gob.Register(ast.Object{})
gob.Register(ast.Elements{})
gob.Register(ast.TemplateString{})
d := gob.NewDecoder(&gobData)
if err := d.Decode(targetType); err != nil {
return err
}
return nil
}
`
Its throwing error as below:
gob: ast.TemplateString is not assignable to type ast.Value
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels