本文整理汇总了Golang中github.com/crackcomm/go-actions/action.Map.Push方法的典型用法代码示例。如果您正苦于以下问题:Golang Map.Push方法的具体用法?Golang Map.Push怎么用?Golang Map.Push使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/crackcomm/go-actions/action.Map
的用法示例。
在下文中一共展示了Map.Push方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: Push
// Push - Pushes values from `push` context map to context.
func Push(ctx action.Map) (action.Map, error) {
p := ctx.Pop("push")
// If it is a string push current context under `push` name to a new one
if push, ok := p.String(); ok {
clean := make(action.Map)
clean.Push(push, ctx)
return clean, nil
}
// If it is a map iterate through `push` map and pull values by `key` from context and push under `value`
if push, ok := p.Map(); ok {
for key := range push {
if value := ctx.Pop(key); !value.IsNil() {
name, _ := push.Get(key).String()
ctx.Push(name, value.Value)
glog.V(3).Infof("Pushing %#v value %#v under name %#v", key, value, name)
}
}
return ctx, nil
}
return nil, ErrPushUnexpected
}