mirror of
https://github.com/opencloud-eu/opencloud.git
synced 2026-05-07 12:01:27 -05:00
51805e710d
Bumps [github.com/open-policy-agent/opa](https://github.com/open-policy-agent/opa) from 1.4.2 to 1.5.0. - [Release notes](https://github.com/open-policy-agent/opa/releases) - [Changelog](https://github.com/open-policy-agent/opa/blob/main/CHANGELOG.md) - [Commits](https://github.com/open-policy-agent/opa/compare/v1.4.2...v1.5.0) --- updated-dependencies: - dependency-name: github.com/open-policy-agent/opa dependency-version: 1.5.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com>
38 lines
753 B
Go
38 lines
753 B
Go
package ast
|
|
|
|
func arg2map(defs ArgumentDefinitionList, args ArgumentList, vars map[string]interface{}) map[string]interface{} {
|
|
result := map[string]interface{}{}
|
|
var err error
|
|
|
|
for _, argDef := range defs {
|
|
var val interface{}
|
|
var hasValue bool
|
|
|
|
if argValue := args.ForName(argDef.Name); argValue != nil {
|
|
if argValue.Value.Kind == Variable {
|
|
val, hasValue = vars[argValue.Value.Raw]
|
|
} else {
|
|
val, err = argValue.Value.Value(vars)
|
|
if err != nil {
|
|
panic(err)
|
|
}
|
|
hasValue = true
|
|
}
|
|
}
|
|
|
|
if !hasValue && argDef.DefaultValue != nil {
|
|
val, err = argDef.DefaultValue.Value(vars)
|
|
if err != nil {
|
|
panic(err)
|
|
}
|
|
hasValue = true
|
|
}
|
|
|
|
if hasValue {
|
|
result[argDef.Name] = val
|
|
}
|
|
}
|
|
|
|
return result
|
|
}
|