returnnil,errors.Errorf("Prototype '%s' has multiple parameters with name '%s'",proto.Name,param.Name)
}
quoted,err:=param.Quote(val)
iferr!=nil{
returnnil,err
}
values[param.Name]=quoted
}
iflen(missingRequired)>0{
returnnil,errors.Errorf("failed to instantiate prototype '%s'. The following required parameters are missing:\n%s",proto.Name,missingRequired.PrettyString(""))
}
for_,param:=rangeproto.OptionalParams(){
val,err:=flags.GetString(param.Name)
iferr!=nil{
returnnil,err
}elseif_,ok:=values[param.Name];ok{
returnnil,errors.Errorf("prototype '%s' has multiple parameters with name '%s'",proto.Name,param.Name)
}
quoted,err:=param.Quote(val)
iferr!=nil{
returnnil,err
}
values[param.Name]=quoted
}
returnvalues,nil
}
// TODO: this doesn't belong here. Needs to be closer to where other jsonnet processing happens.