package main import ( "encoding/gob" "os" ) func (r Route) Save(fname string) error { fd, err := os.Create(fname) if err != nil { return err } defer fd.Close() return gob.NewEncoder(fd).Encode(r) } func (r *Route) Load(fname string) error { fd, err := os.Open(fname) if err != nil { return err } defer fd.Close() return gob.NewDecoder(fd).Decode(r) }