github.com/myhau/pulumi/pkg/v3@v3.70.2-0.20221116134521-f2775972e587/codegen/testing/test/testdata/output-funcs/go/mypkg/funcWithDictParam.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 mypkg
     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 a Dict<str,str> parameter.
    14  func FuncWithDictParam(ctx *pulumi.Context, args *FuncWithDictParamArgs, opts ...pulumi.InvokeOption) (*FuncWithDictParamResult, error) {
    15  	var rv FuncWithDictParamResult
    16  	err := ctx.Invoke("mypkg::funcWithDictParam", args, &rv, opts...)
    17  	if err != nil {
    18  		return nil, err
    19  	}
    20  	return &rv, nil
    21  }
    22  
    23  type FuncWithDictParamArgs struct {
    24  	A map[string]string `pulumi:"a"`
    25  	B *string           `pulumi:"b"`
    26  }
    27  
    28  type FuncWithDictParamResult struct {
    29  	R string `pulumi:"r"`
    30  }
    31  
    32  func FuncWithDictParamOutput(ctx *pulumi.Context, args FuncWithDictParamOutputArgs, opts ...pulumi.InvokeOption) FuncWithDictParamResultOutput {
    33  	return pulumi.ToOutputWithContext(context.Background(), args).
    34  		ApplyT(func(v interface{}) (FuncWithDictParamResult, error) {
    35  			args := v.(FuncWithDictParamArgs)
    36  			r, err := FuncWithDictParam(ctx, &args, opts...)
    37  			var s FuncWithDictParamResult
    38  			if r != nil {
    39  				s = *r
    40  			}
    41  			return s, err
    42  		}).(FuncWithDictParamResultOutput)
    43  }
    44  
    45  type FuncWithDictParamOutputArgs struct {
    46  	A pulumi.StringMapInput `pulumi:"a"`
    47  	B pulumi.StringPtrInput `pulumi:"b"`
    48  }
    49  
    50  func (FuncWithDictParamOutputArgs) ElementType() reflect.Type {
    51  	return reflect.TypeOf((*FuncWithDictParamArgs)(nil)).Elem()
    52  }
    53  
    54  type FuncWithDictParamResultOutput struct{ *pulumi.OutputState }
    55  
    56  func (FuncWithDictParamResultOutput) ElementType() reflect.Type {
    57  	return reflect.TypeOf((*FuncWithDictParamResult)(nil)).Elem()
    58  }
    59  
    60  func (o FuncWithDictParamResultOutput) ToFuncWithDictParamResultOutput() FuncWithDictParamResultOutput {
    61  	return o
    62  }
    63  
    64  func (o FuncWithDictParamResultOutput) ToFuncWithDictParamResultOutputWithContext(ctx context.Context) FuncWithDictParamResultOutput {
    65  	return o
    66  }
    67  
    68  func (o FuncWithDictParamResultOutput) R() pulumi.StringOutput {
    69  	return o.ApplyT(func(v FuncWithDictParamResult) string { return v.R }).(pulumi.StringOutput)
    70  }
    71  
    72  func init() {
    73  	pulumi.RegisterOutputType(FuncWithDictParamResultOutput{})
    74  }