Strange type definition syntax in Golang (name, then type, then string literal)

Viewed 6477

I've been trying to find out how to use mgo (MongoDB driver for Go) and I came across this struct declaration:

type Something struct {
    Id bson.ObjectId "_id,omitempty"
    Name string
}

I don't quite understand the syntax of the first element (Id). I understand that it's being declared as type bson.ObjectId, but what is the string literal doing there?

My question is not about the mgo driver functionality,
but about this strange <name> <type> <string_literal> syntax.

I couldn't find anything on the Go specs, and I don't know how to google this either.

1 Answers
Related