Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Golang - conversion between structs

I have two structs

type A struct {
    a int
    b string
}

type B struct {
    A
    c string
    // more fields
}

I'd like to convert variable of type A to type B (A has defined only basic fields that are crucial for some parts, B on the other hand contains 'full' data).

Is it possible in Go, or do I have to copy fields manually (or create a method A.GetB() or something like this and use this to convert A to B)?

like image 953
Artur Rychlewicz Avatar asked Jun 09 '16 11:06

Artur Rychlewicz


1 Answers

By converting do you mean this:

func main() {
    // create structA of type A
    structA := A{a: 42, b: "foo"}

    // convert to type B
    structB := B{A: structA}
}
like image 179
jussius Avatar answered Oct 23 '22 04:10

jussius