github.com/myhau/pulumi/pkg/v3@v3.70.2-0.20221116134521-f2775972e587/codegen/testing/test/testdata/plain-object-defaults/go/example/funcWithAllOptionalInputs.go (about) 1 // Code generated by test DO NOT EDIT. 2 // *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** 3 4 package example 5 6 import ( 7 "context" 8 "reflect" 9 10 "github.com/pulumi/pulumi/sdk/v3/go/pulumi" 11 ) 12 13 // Check codegen of functions with all optional inputs. 14 func FuncWithAllOptionalInputs(ctx *pulumi.Context, args *FuncWithAllOptionalInputsArgs, opts ...pulumi.InvokeOption) (*FuncWithAllOptionalInputsResult, error) { 15 var rv FuncWithAllOptionalInputsResult 16 err := ctx.Invoke("example::funcWithAllOptionalInputs", args.Defaults(), &rv, opts...) 17 if err != nil { 18 return nil, err 19 } 20 return &rv, nil 21 } 22 23 type FuncWithAllOptionalInputsArgs struct { 24 // Property A 25 A *HelmReleaseSettings `pulumi:"a"` 26 // Property B 27 B *string `pulumi:"b"` 28 } 29 30 // Defaults sets the appropriate defaults for FuncWithAllOptionalInputsArgs 31 func (val *FuncWithAllOptionalInputsArgs) Defaults() *FuncWithAllOptionalInputsArgs { 32 if val == nil { 33 return nil 34 } 35 tmp := *val 36 tmp.A = tmp.A.Defaults() 37 38 if isZero(tmp.B) { 39 b_ := "defValue" 40 tmp.B = &b_ 41 } 42 return &tmp 43 } 44 45 type FuncWithAllOptionalInputsResult struct { 46 R string `pulumi:"r"` 47 } 48 49 func FuncWithAllOptionalInputsOutput(ctx *pulumi.Context, args FuncWithAllOptionalInputsOutputArgs, opts ...pulumi.InvokeOption) FuncWithAllOptionalInputsResultOutput { 50 return pulumi.ToOutputWithContext(context.Background(), args). 51 ApplyT(func(v interface{}) (FuncWithAllOptionalInputsResult, error) { 52 args := v.(FuncWithAllOptionalInputsArgs) 53 r, err := FuncWithAllOptionalInputs(ctx, &args, opts...) 54 var s FuncWithAllOptionalInputsResult 55 if r != nil { 56 s = *r 57 } 58 return s, err 59 }).(FuncWithAllOptionalInputsResultOutput) 60 } 61 62 type FuncWithAllOptionalInputsOutputArgs struct { 63 // Property A 64 A HelmReleaseSettingsPtrInput `pulumi:"a"` 65 // Property B 66 B pulumi.StringPtrInput `pulumi:"b"` 67 } 68 69 func (FuncWithAllOptionalInputsOutputArgs) ElementType() reflect.Type { 70 return reflect.TypeOf((*FuncWithAllOptionalInputsArgs)(nil)).Elem() 71 } 72 73 type FuncWithAllOptionalInputsResultOutput struct{ *pulumi.OutputState } 74 75 func (FuncWithAllOptionalInputsResultOutput) ElementType() reflect.Type { 76 return reflect.TypeOf((*FuncWithAllOptionalInputsResult)(nil)).Elem() 77 } 78 79 func (o FuncWithAllOptionalInputsResultOutput) ToFuncWithAllOptionalInputsResultOutput() FuncWithAllOptionalInputsResultOutput { 80 return o 81 } 82 83 func (o FuncWithAllOptionalInputsResultOutput) ToFuncWithAllOptionalInputsResultOutputWithContext(ctx context.Context) FuncWithAllOptionalInputsResultOutput { 84 return o 85 } 86 87 func (o FuncWithAllOptionalInputsResultOutput) R() pulumi.StringOutput { 88 return o.ApplyT(func(v FuncWithAllOptionalInputsResult) string { return v.R }).(pulumi.StringOutput) 89 } 90 91 func init() { 92 pulumi.RegisterOutputType(FuncWithAllOptionalInputsResultOutput{}) 93 }