github.com/myhau/pulumi/pkg/v3@v3.70.2-0.20221116134521-f2775972e587/codegen/testing/test/testdata/go-nested-collections/go/repro/overlap/consumer.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 overlap 5 6 import ( 7 "context" 8 "reflect" 9 10 "github.com/pulumi/pulumi/sdk/v3/go/pulumi" 11 ) 12 13 type Consumer struct { 14 pulumi.CustomResourceState 15 } 16 17 // NewConsumer registers a new resource with the given unique name, arguments, and options. 18 func NewConsumer(ctx *pulumi.Context, 19 name string, args *ConsumerArgs, opts ...pulumi.ResourceOption) (*Consumer, error) { 20 if args == nil { 21 args = &ConsumerArgs{} 22 } 23 24 var resource Consumer 25 err := ctx.RegisterResource("repro:overlap:Consumer", name, args, &resource, opts...) 26 if err != nil { 27 return nil, err 28 } 29 return &resource, nil 30 } 31 32 // GetConsumer gets an existing Consumer resource's state with the given name, ID, and optional 33 // state properties that are used to uniquely qualify the lookup (nil if not required). 34 func GetConsumer(ctx *pulumi.Context, 35 name string, id pulumi.IDInput, state *ConsumerState, opts ...pulumi.ResourceOption) (*Consumer, error) { 36 var resource Consumer 37 err := ctx.ReadResource("repro:overlap:Consumer", name, id, state, &resource, opts...) 38 if err != nil { 39 return nil, err 40 } 41 return &resource, nil 42 } 43 44 // Input properties used for looking up and filtering Consumer resources. 45 type consumerState struct { 46 } 47 48 type ConsumerState struct { 49 } 50 51 func (ConsumerState) ElementType() reflect.Type { 52 return reflect.TypeOf((*consumerState)(nil)).Elem() 53 } 54 55 type consumerArgs struct { 56 Typ map[string]*SomeType `pulumi:"typ"` 57 TypM *SomeTypeMap `pulumi:"typM"` 58 } 59 60 // The set of arguments for constructing a Consumer resource. 61 type ConsumerArgs struct { 62 Typ SomeTypeMapInput 63 TypM SomeTypeMapInput 64 } 65 66 func (ConsumerArgs) ElementType() reflect.Type { 67 return reflect.TypeOf((*consumerArgs)(nil)).Elem() 68 } 69 70 type ConsumerInput interface { 71 pulumi.Input 72 73 ToConsumerOutput() ConsumerOutput 74 ToConsumerOutputWithContext(ctx context.Context) ConsumerOutput 75 } 76 77 func (*Consumer) ElementType() reflect.Type { 78 return reflect.TypeOf((**Consumer)(nil)).Elem() 79 } 80 81 func (i *Consumer) ToConsumerOutput() ConsumerOutput { 82 return i.ToConsumerOutputWithContext(context.Background()) 83 } 84 85 func (i *Consumer) ToConsumerOutputWithContext(ctx context.Context) ConsumerOutput { 86 return pulumi.ToOutputWithContext(ctx, i).(ConsumerOutput) 87 } 88 89 // ConsumerArrayInput is an input type that accepts ConsumerArray and ConsumerArrayOutput values. 90 // You can construct a concrete instance of `ConsumerArrayInput` via: 91 // 92 // ConsumerArray{ ConsumerArgs{...} } 93 type ConsumerArrayInput interface { 94 pulumi.Input 95 96 ToConsumerArrayOutput() ConsumerArrayOutput 97 ToConsumerArrayOutputWithContext(context.Context) ConsumerArrayOutput 98 } 99 100 type ConsumerArray []ConsumerInput 101 102 func (ConsumerArray) ElementType() reflect.Type { 103 return reflect.TypeOf((*[]*Consumer)(nil)).Elem() 104 } 105 106 func (i ConsumerArray) ToConsumerArrayOutput() ConsumerArrayOutput { 107 return i.ToConsumerArrayOutputWithContext(context.Background()) 108 } 109 110 func (i ConsumerArray) ToConsumerArrayOutputWithContext(ctx context.Context) ConsumerArrayOutput { 111 return pulumi.ToOutputWithContext(ctx, i).(ConsumerArrayOutput) 112 } 113 114 // ConsumerMapInput is an input type that accepts ConsumerMap and ConsumerMapOutput values. 115 // You can construct a concrete instance of `ConsumerMapInput` via: 116 // 117 // ConsumerMap{ "key": ConsumerArgs{...} } 118 type ConsumerMapInput interface { 119 pulumi.Input 120 121 ToConsumerMapOutput() ConsumerMapOutput 122 ToConsumerMapOutputWithContext(context.Context) ConsumerMapOutput 123 } 124 125 type ConsumerMap map[string]ConsumerInput 126 127 func (ConsumerMap) ElementType() reflect.Type { 128 return reflect.TypeOf((*map[string]*Consumer)(nil)).Elem() 129 } 130 131 func (i ConsumerMap) ToConsumerMapOutput() ConsumerMapOutput { 132 return i.ToConsumerMapOutputWithContext(context.Background()) 133 } 134 135 func (i ConsumerMap) ToConsumerMapOutputWithContext(ctx context.Context) ConsumerMapOutput { 136 return pulumi.ToOutputWithContext(ctx, i).(ConsumerMapOutput) 137 } 138 139 type ConsumerOutput struct{ *pulumi.OutputState } 140 141 func (ConsumerOutput) ElementType() reflect.Type { 142 return reflect.TypeOf((**Consumer)(nil)).Elem() 143 } 144 145 func (o ConsumerOutput) ToConsumerOutput() ConsumerOutput { 146 return o 147 } 148 149 func (o ConsumerOutput) ToConsumerOutputWithContext(ctx context.Context) ConsumerOutput { 150 return o 151 } 152 153 type ConsumerArrayOutput struct{ *pulumi.OutputState } 154 155 func (ConsumerArrayOutput) ElementType() reflect.Type { 156 return reflect.TypeOf((*[]*Consumer)(nil)).Elem() 157 } 158 159 func (o ConsumerArrayOutput) ToConsumerArrayOutput() ConsumerArrayOutput { 160 return o 161 } 162 163 func (o ConsumerArrayOutput) ToConsumerArrayOutputWithContext(ctx context.Context) ConsumerArrayOutput { 164 return o 165 } 166 167 func (o ConsumerArrayOutput) Index(i pulumi.IntInput) ConsumerOutput { 168 return pulumi.All(o, i).ApplyT(func(vs []interface{}) *Consumer { 169 return vs[0].([]*Consumer)[vs[1].(int)] 170 }).(ConsumerOutput) 171 } 172 173 type ConsumerMapOutput struct{ *pulumi.OutputState } 174 175 func (ConsumerMapOutput) ElementType() reflect.Type { 176 return reflect.TypeOf((*map[string]*Consumer)(nil)).Elem() 177 } 178 179 func (o ConsumerMapOutput) ToConsumerMapOutput() ConsumerMapOutput { 180 return o 181 } 182 183 func (o ConsumerMapOutput) ToConsumerMapOutputWithContext(ctx context.Context) ConsumerMapOutput { 184 return o 185 } 186 187 func (o ConsumerMapOutput) MapIndex(k pulumi.StringInput) ConsumerOutput { 188 return pulumi.All(o, k).ApplyT(func(vs []interface{}) *Consumer { 189 return vs[0].(map[string]*Consumer)[vs[1].(string)] 190 }).(ConsumerOutput) 191 } 192 193 func init() { 194 pulumi.RegisterInputType(reflect.TypeOf((*ConsumerInput)(nil)).Elem(), &Consumer{}) 195 pulumi.RegisterInputType(reflect.TypeOf((*ConsumerArrayInput)(nil)).Elem(), ConsumerArray{}) 196 pulumi.RegisterInputType(reflect.TypeOf((*ConsumerMapInput)(nil)).Elem(), ConsumerMap{}) 197 pulumi.RegisterOutputType(ConsumerOutput{}) 198 pulumi.RegisterOutputType(ConsumerArrayOutput{}) 199 pulumi.RegisterOutputType(ConsumerMapOutput{}) 200 }