in awscdk/awssam/CfnStateMachine__checks.go [311:414]
func (j *jsiiProxy_CfnStateMachine) validateSetPoliciesParameters(val interface{}) error {
switch val.(type) {
case *string:
// ok
case string:
// ok
case awscdk.IResolvable:
// ok
case *CfnStateMachine_IAMPolicyDocumentProperty:
val := val.(*CfnStateMachine_IAMPolicyDocumentProperty)
if err := _jsii_.ValidateStruct(val, func() string { return "parameter val" }); err != nil {
return err
}
case CfnStateMachine_IAMPolicyDocumentProperty:
val_ := val.(CfnStateMachine_IAMPolicyDocumentProperty)
val := &val_
if err := _jsii_.ValidateStruct(val, func() string { return "parameter val" }); err != nil {
return err
}
case *[]interface{}:
val := val.(*[]interface{})
for idx_97dfc6, v := range *val {
switch v.(type) {
case *string:
// ok
case string:
// ok
case awscdk.IResolvable:
// ok
case *CfnStateMachine_IAMPolicyDocumentProperty:
v := v.(*CfnStateMachine_IAMPolicyDocumentProperty)
if err := _jsii_.ValidateStruct(v, func() string { return fmt.Sprintf("parameter val[%#v]", idx_97dfc6) }); err != nil {
return err
}
case CfnStateMachine_IAMPolicyDocumentProperty:
v_ := v.(CfnStateMachine_IAMPolicyDocumentProperty)
v := &v_
if err := _jsii_.ValidateStruct(v, func() string { return fmt.Sprintf("parameter val[%#v]", idx_97dfc6) }); err != nil {
return err
}
case *CfnStateMachine_SAMPolicyTemplateProperty:
v := v.(*CfnStateMachine_SAMPolicyTemplateProperty)
if err := _jsii_.ValidateStruct(v, func() string { return fmt.Sprintf("parameter val[%#v]", idx_97dfc6) }); err != nil {
return err
}
case CfnStateMachine_SAMPolicyTemplateProperty:
v_ := v.(CfnStateMachine_SAMPolicyTemplateProperty)
v := &v_
if err := _jsii_.ValidateStruct(v, func() string { return fmt.Sprintf("parameter val[%#v]", idx_97dfc6) }); err != nil {
return err
}
default:
if !_jsii_.IsAnonymousProxy(v) {
return fmt.Errorf("parameter val[%#v] must be one of the allowed types: *string, awscdk.IResolvable, *CfnStateMachine_IAMPolicyDocumentProperty, *CfnStateMachine_SAMPolicyTemplateProperty; received %#v (a %T)", idx_97dfc6, v, v)
}
}
}
case []interface{}:
val_ := val.([]interface{})
val := &val_
for idx_97dfc6, v := range *val {
switch v.(type) {
case *string:
// ok
case string:
// ok
case awscdk.IResolvable:
// ok
case *CfnStateMachine_IAMPolicyDocumentProperty:
v := v.(*CfnStateMachine_IAMPolicyDocumentProperty)
if err := _jsii_.ValidateStruct(v, func() string { return fmt.Sprintf("parameter val[%#v]", idx_97dfc6) }); err != nil {
return err
}
case CfnStateMachine_IAMPolicyDocumentProperty:
v_ := v.(CfnStateMachine_IAMPolicyDocumentProperty)
v := &v_
if err := _jsii_.ValidateStruct(v, func() string { return fmt.Sprintf("parameter val[%#v]", idx_97dfc6) }); err != nil {
return err
}
case *CfnStateMachine_SAMPolicyTemplateProperty:
v := v.(*CfnStateMachine_SAMPolicyTemplateProperty)
if err := _jsii_.ValidateStruct(v, func() string { return fmt.Sprintf("parameter val[%#v]", idx_97dfc6) }); err != nil {
return err
}
case CfnStateMachine_SAMPolicyTemplateProperty:
v_ := v.(CfnStateMachine_SAMPolicyTemplateProperty)
v := &v_
if err := _jsii_.ValidateStruct(v, func() string { return fmt.Sprintf("parameter val[%#v]", idx_97dfc6) }); err != nil {
return err
}
default:
if !_jsii_.IsAnonymousProxy(v) {
return fmt.Errorf("parameter val[%#v] must be one of the allowed types: *string, awscdk.IResolvable, *CfnStateMachine_IAMPolicyDocumentProperty, *CfnStateMachine_SAMPolicyTemplateProperty; received %#v (a %T)", idx_97dfc6, v, v)
}
}
}
default:
if !_jsii_.IsAnonymousProxy(val) {
return fmt.Errorf("parameter val must be one of the allowed types: *string, awscdk.IResolvable, *CfnStateMachine_IAMPolicyDocumentProperty, *[]interface{}; received %#v (a %T)", val, val)
}
}
return nil
}