本文整理汇总了Golang中github.com/Gaboose/go-multiaddr-net/match.Context.Map方法的典型用法代码示例。如果您正苦于以下问题:Golang Context.Map方法的具体用法?Golang Context.Map怎么用?Golang Context.Map使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/Gaboose/go-multiaddr-net/match.Context
的用法示例。
在下文中一共展示了Context.Map方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: CopyTo
func (ctx context) CopyTo(target match.Context) {
// shallow copy
*target.Misc() = ctx.misc
*target.Special() = ctx.special
trg := target.Map()
for k, val := range ctx.Map() {
// If we want to allow pointers to structs in the map, we have to copy
// one level deeper, i.e. instead of copying the pointer, reflect and
// copy what it points to.
rval := reflect.ValueOf(val)
if rval.Kind() == reflect.Ptr {
rv := reflect.New(rval.Type().Elem())
rv.Elem().Set(rval.Elem())
trg[k] = rv.Interface()
} else {
trg[k] = val
}
}
}