Я изучаю пример приложения Go, которое хранит данные в mongodb. Код в этой строке (https://github.com/zeebo/gostbook/blob/master/context.go#L36), по-видимому, обращается к идентификатору пользователя, хранящемуся в сеансе гориллы:
if uid, ok := sess.Values["user"].(bson.ObjectId); ok {
...
}
Кто-нибудь, пожалуйста, объясните мне синтаксис здесь? Я понимаю, что sess.Values["user"]
получает значение из сеанса, но какая часть следует за этим? Почему выражение после точки в скобках? Это вызов функции?