Skip to content

Commit 5fd8ee2

Browse files
thockinJefftree
authored andcommitted
Tweak generators and tests for latest gengo
Required a couple tweaks to generators
1 parent 40f3453 commit 5fd8ee2

File tree

4 files changed

+101
-71
lines changed

4 files changed

+101
-71
lines changed

staging/src/k8s.io/code-generator/cmd/conversion-gen/generators/conversion.go

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -158,16 +158,16 @@ func getManualConversionFunctions(context *generator.Context, pkg *types.Package
158158
klog.V(6).Infof("%s has a receiver", f.Name)
159159
continue
160160
}
161-
if len(signature.Parameters) != 3 || signature.Parameters[2].Name != scopeName {
161+
if len(signature.Parameters) != 3 || signature.Parameters[2].Type.Name != scopeName {
162162
klog.V(6).Infof("%s has wrong parameters", f.Name)
163163
continue
164164
}
165-
if len(signature.Results) != 1 || signature.Results[0].Name != errorName {
165+
if len(signature.Results) != 1 || signature.Results[0].Type.Name != errorName {
166166
klog.V(6).Infof("%s has wrong results", f.Name)
167167
continue
168168
}
169-
inType := signature.Parameters[0]
170-
outType := signature.Parameters[1]
169+
inType := signature.Parameters[0].Type
170+
outType := signature.Parameters[1].Type
171171
if inType.Kind != types.Pointer || outType.Kind != types.Pointer {
172172
klog.V(6).Infof("%s has wrong parameter types", f.Name)
173173
continue

staging/src/k8s.io/code-generator/cmd/deepcopy-gen/generators/deepcopy.go

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -277,8 +277,8 @@ func deepCopyMethod(t *types.Type) (*types.Signature, error) {
277277
return nil, fmt.Errorf("type %v: invalid DeepCopy signature, expected exactly one result", t)
278278
}
279279

280-
ptrResult := f.Signature.Results[0].Kind == types.Pointer && f.Signature.Results[0].Elem.Name == t.Name
281-
nonPtrResult := f.Signature.Results[0].Name == t.Name
280+
ptrResult := f.Signature.Results[0].Type.Kind == types.Pointer && f.Signature.Results[0].Type.Elem.Name == t.Name
281+
nonPtrResult := f.Signature.Results[0].Type.Name == t.Name
282282

283283
if !ptrResult && !nonPtrResult {
284284
return nil, fmt.Errorf("type %v: invalid DeepCopy signature, expected to return %s or *%s", t, t.Name.Name, t.Name.Name)
@@ -329,7 +329,7 @@ func deepCopyIntoMethod(t *types.Type) (*types.Signature, error) {
329329
return nil, fmt.Errorf("type %v: invalid DeepCopy signature, expected no result type", t)
330330
}
331331

332-
ptrParam := f.Signature.Parameters[0].Kind == types.Pointer && f.Signature.Parameters[0].Elem.Name == t.Name
332+
ptrParam := f.Signature.Parameters[0].Type.Kind == types.Pointer && f.Signature.Parameters[0].Type.Elem.Name == t.Name
333333

334334
if !ptrParam {
335335
return nil, fmt.Errorf("type %v: invalid DeepCopy signature, expected parameter of type *%s", t, t.Name.Name)
@@ -696,7 +696,7 @@ func (g *genDeepCopy) doMap(t *types.Type, sw *generator.SnippetWriter) {
696696
leftPointer := ut.Elem.Kind == types.Pointer
697697
rightPointer := !isReference(ut.Elem)
698698
if dc != nil {
699-
rightPointer = dc.Results[0].Kind == types.Pointer
699+
rightPointer = dc.Results[0].Type.Kind == types.Pointer
700700
}
701701
if leftPointer == rightPointer {
702702
sw.Do("(*out)[key] = val.DeepCopy()\n", nil)
@@ -812,7 +812,7 @@ func (g *genDeepCopy) doStruct(t *types.Type, sw *generator.SnippetWriter) {
812812
leftPointer := ft.Kind == types.Pointer
813813
rightPointer := !isReference(ft)
814814
if dc != nil {
815-
rightPointer = dc.Results[0].Kind == types.Pointer
815+
rightPointer = dc.Results[0].Type.Kind == types.Pointer
816816
}
817817
if leftPointer == rightPointer {
818818
sw.Do("out.$.name$ = in.$.name$.DeepCopy()\n", args)
@@ -866,7 +866,7 @@ func (g *genDeepCopy) doPointer(t *types.Type, sw *generator.SnippetWriter) {
866866
case dc != nil || dci != nil:
867867
rightPointer := !isReference(ut.Elem)
868868
if dc != nil {
869-
rightPointer = dc.Results[0].Kind == types.Pointer
869+
rightPointer = dc.Results[0].Type.Kind == types.Pointer
870870
}
871871
if rightPointer {
872872
sw.Do("*out = (*in).DeepCopy()\n", nil)

staging/src/k8s.io/code-generator/cmd/deepcopy-gen/generators/deepcopy_test.go

Lines changed: 90 additions & 60 deletions
Original file line numberDiff line numberDiff line change
@@ -52,8 +52,8 @@ func Test_deepCopyMethod(t *testing.T) {
5252
Kind: types.Pointer,
5353
Elem: &types.Type{Kind: types.Struct, Name: types.Name{Package: "pkgname", Name: "typename"}},
5454
},
55-
Parameters: []*types.Type{},
56-
Results: []*types.Type{},
55+
Parameters: []*types.ParamResult{},
56+
Results: []*types.ParamResult{},
5757
},
5858
},
5959
},
@@ -74,8 +74,8 @@ func Test_deepCopyMethod(t *testing.T) {
7474
Kind: types.Pointer,
7575
Elem: &types.Type{Kind: types.Struct, Name: types.Name{Package: "pkgname", Name: "typename"}},
7676
},
77-
Parameters: []*types.Type{},
78-
Results: []*types.Type{},
77+
Parameters: []*types.ParamResult{},
78+
Results: []*types.ParamResult{},
7979
},
8080
},
8181
},
@@ -97,11 +97,10 @@ func Test_deepCopyMethod(t *testing.T) {
9797
Kind: types.Pointer,
9898
Elem: &types.Type{Kind: types.Struct, Name: types.Name{Package: "pkgname", Name: "typename"}},
9999
},
100-
Parameters: []*types.Type{},
101-
Results: []*types.Type{
100+
Parameters: []*types.ParamResult{},
101+
Results: []*types.ParamResult{
102102
{
103-
Name: types.Name{Name: "int"},
104-
Kind: types.Builtin,
103+
Type: &types.Type{Name: types.Name{Name: "int"}, Kind: types.Builtin},
105104
},
106105
},
107106
},
@@ -125,11 +124,13 @@ func Test_deepCopyMethod(t *testing.T) {
125124
Kind: types.Pointer,
126125
Elem: &types.Type{Kind: types.Struct, Name: types.Name{Package: "pkgname", Name: "typename"}},
127126
},
128-
Parameters: []*types.Type{},
129-
Results: []*types.Type{
127+
Parameters: []*types.ParamResult{},
128+
Results: []*types.ParamResult{
130129
{
131-
Name: types.Name{Package: "pkgname", Name: "typename"},
132-
Kind: types.Builtin,
130+
Type: &types.Type{
131+
Name: types.Name{Package: "pkgname", Name: "typename"},
132+
Kind: types.Builtin,
133+
},
133134
},
134135
},
135136
},
@@ -150,11 +151,13 @@ func Test_deepCopyMethod(t *testing.T) {
150151
Kind: types.Func,
151152
Signature: &types.Signature{
152153
Receiver: &types.Type{Kind: types.Struct, Name: types.Name{Package: "pkgname", Name: "typename"}},
153-
Parameters: []*types.Type{},
154-
Results: []*types.Type{
154+
Parameters: []*types.ParamResult{},
155+
Results: []*types.ParamResult{
155156
{
156-
Kind: types.Pointer,
157-
Elem: &types.Type{Kind: types.Struct, Name: types.Name{Package: "pkgname", Name: "typename"}},
157+
Type: &types.Type{
158+
Kind: types.Pointer,
159+
Elem: &types.Type{Kind: types.Struct, Name: types.Name{Package: "pkgname", Name: "typename"}},
160+
},
158161
},
159162
},
160163
},
@@ -175,11 +178,13 @@ func Test_deepCopyMethod(t *testing.T) {
175178
Kind: types.Func,
176179
Signature: &types.Signature{
177180
Receiver: &types.Type{Kind: types.Struct, Name: types.Name{Package: "pkgname", Name: "typename"}},
178-
Parameters: []*types.Type{},
179-
Results: []*types.Type{
181+
Parameters: []*types.ParamResult{},
182+
Results: []*types.ParamResult{
180183
{
181-
Name: types.Name{Package: "pkgname", Name: "typename"},
182-
Kind: types.Builtin,
184+
Type: &types.Type{
185+
Name: types.Name{Package: "pkgname", Name: "typename"},
186+
Kind: types.Builtin,
187+
},
183188
},
184189
},
185190
},
@@ -202,11 +207,13 @@ func Test_deepCopyMethod(t *testing.T) {
202207
Kind: types.Pointer,
203208
Elem: &types.Type{Kind: types.Struct, Name: types.Name{Package: "pkgname", Name: "typename"}},
204209
},
205-
Parameters: []*types.Type{},
206-
Results: []*types.Type{
210+
Parameters: []*types.ParamResult{},
211+
Results: []*types.ParamResult{
207212
{
208-
Kind: types.Pointer,
209-
Elem: &types.Type{Kind: types.Struct, Name: types.Name{Package: "pkgname", Name: "typename"}},
213+
Type: &types.Type{
214+
Kind: types.Pointer,
215+
Elem: &types.Type{Kind: types.Struct, Name: types.Name{Package: "pkgname", Name: "typename"}},
216+
},
210217
},
211218
},
212219
},
@@ -229,16 +236,20 @@ func Test_deepCopyMethod(t *testing.T) {
229236
Kind: types.Pointer,
230237
Elem: &types.Type{Kind: types.Struct, Name: types.Name{Package: "pkgname", Name: "typename"}},
231238
},
232-
Parameters: []*types.Type{
239+
Parameters: []*types.ParamResult{
233240
{
234-
Name: types.Name{Name: "int"},
235-
Kind: types.Builtin,
241+
Type: &types.Type{
242+
Name: types.Name{Name: "int"},
243+
Kind: types.Builtin,
244+
},
236245
},
237246
},
238-
Results: []*types.Type{
247+
Results: []*types.ParamResult{
239248
{
240-
Name: types.Name{Package: "pkgname", Name: "typename"},
241-
Kind: types.Builtin,
249+
Type: &types.Type{
250+
Name: types.Name{Package: "pkgname", Name: "typename"},
251+
Kind: types.Builtin,
252+
},
242253
},
243254
},
244255
},
@@ -262,15 +273,19 @@ func Test_deepCopyMethod(t *testing.T) {
262273
Kind: types.Pointer,
263274
Elem: &types.Type{Kind: types.Struct, Name: types.Name{Package: "pkgname", Name: "typename"}},
264275
},
265-
Parameters: []*types.Type{},
266-
Results: []*types.Type{
276+
Parameters: []*types.ParamResult{},
277+
Results: []*types.ParamResult{
267278
{
268-
Name: types.Name{Package: "pkgname", Name: "typename"},
269-
Kind: types.Builtin,
279+
Type: &types.Type{
280+
Name: types.Name{Package: "pkgname", Name: "typename"},
281+
Kind: types.Builtin,
282+
},
270283
},
271284
{
272-
Name: types.Name{Name: "int"},
273-
Kind: types.Builtin,
285+
Type: &types.Type{
286+
Name: types.Name{Name: "int"},
287+
Kind: types.Builtin,
288+
},
274289
},
275290
},
276291
},
@@ -323,8 +338,8 @@ func Test_deepCopyIntoMethod(t *testing.T) {
323338
Kind: types.Pointer,
324339
Elem: &types.Type{Kind: types.Struct, Name: types.Name{Package: "pkgname", Name: "typename"}},
325340
},
326-
Parameters: []*types.Type{},
327-
Results: []*types.Type{},
341+
Parameters: []*types.ParamResult{},
342+
Results: []*types.ParamResult{},
328343
},
329344
},
330345
},
@@ -345,8 +360,8 @@ func Test_deepCopyIntoMethod(t *testing.T) {
345360
Kind: types.Pointer,
346361
Elem: &types.Type{Kind: types.Struct, Name: types.Name{Package: "pkgname", Name: "typename"}},
347362
},
348-
Parameters: []*types.Type{},
349-
Results: []*types.Type{},
363+
Parameters: []*types.ParamResult{},
364+
Results: []*types.ParamResult{},
350365
},
351366
},
352367
},
@@ -368,16 +383,20 @@ func Test_deepCopyIntoMethod(t *testing.T) {
368383
Kind: types.Pointer,
369384
Elem: &types.Type{Kind: types.Struct, Name: types.Name{Package: "pkgname", Name: "typename"}},
370385
},
371-
Parameters: []*types.Type{
386+
Parameters: []*types.ParamResult{
372387
{
373-
Kind: types.Pointer,
374-
Elem: &types.Type{Kind: types.Struct, Name: types.Name{Package: "pkgname", Name: "typename"}},
388+
Type: &types.Type{
389+
Kind: types.Pointer,
390+
Elem: &types.Type{Kind: types.Struct, Name: types.Name{Package: "pkgname", Name: "typename"}},
391+
},
375392
},
376393
},
377-
Results: []*types.Type{
394+
Results: []*types.ParamResult{
378395
{
379-
Name: types.Name{Name: "int"},
380-
Kind: types.Builtin,
396+
Type: &types.Type{
397+
Name: types.Name{Name: "int"},
398+
Kind: types.Builtin,
399+
},
381400
},
382401
},
383402
},
@@ -401,10 +420,13 @@ func Test_deepCopyIntoMethod(t *testing.T) {
401420
Kind: types.Pointer,
402421
Elem: &types.Type{Kind: types.Struct, Name: types.Name{Package: "pkgname", Name: "typename"}},
403422
},
404-
Parameters: []*types.Type{
405-
{Kind: types.Struct, Name: types.Name{Package: "pkgname", Name: "typename"}},
423+
Parameters: []*types.ParamResult{
424+
{
425+
Type: &types.Type{
426+
Kind: types.Struct, Name: types.Name{Package: "pkgname", Name: "typename"}},
427+
},
406428
},
407-
Results: []*types.Type{},
429+
Results: []*types.ParamResult{},
408430
},
409431
},
410432
},
@@ -423,10 +445,14 @@ func Test_deepCopyIntoMethod(t *testing.T) {
423445
Kind: types.Func,
424446
Signature: &types.Signature{
425447
Receiver: &types.Type{Kind: types.Struct, Name: types.Name{Package: "pkgname", Name: "typename"}},
426-
Parameters: []*types.Type{
427-
{Kind: types.Struct, Name: types.Name{Package: "pkgname", Name: "typename"}},
448+
Parameters: []*types.ParamResult{
449+
{
450+
451+
Type: &types.Type{
452+
Kind: types.Struct, Name: types.Name{Package: "pkgname", Name: "typename"}},
453+
},
428454
},
429-
Results: []*types.Type{},
455+
Results: []*types.ParamResult{},
430456
},
431457
},
432458
},
@@ -445,13 +471,15 @@ func Test_deepCopyIntoMethod(t *testing.T) {
445471
Kind: types.Func,
446472
Signature: &types.Signature{
447473
Receiver: &types.Type{Kind: types.Struct, Name: types.Name{Package: "pkgname", Name: "typename"}},
448-
Parameters: []*types.Type{
474+
Parameters: []*types.ParamResult{
449475
{
450-
Kind: types.Pointer,
451-
Elem: &types.Type{Kind: types.Struct, Name: types.Name{Package: "pkgname", Name: "typename"}},
476+
Type: &types.Type{
477+
Kind: types.Pointer,
478+
Elem: &types.Type{Kind: types.Struct, Name: types.Name{Package: "pkgname", Name: "typename"}},
479+
},
452480
},
453481
},
454-
Results: []*types.Type{},
482+
Results: []*types.ParamResult{},
455483
},
456484
},
457485
},
@@ -472,13 +500,15 @@ func Test_deepCopyIntoMethod(t *testing.T) {
472500
Kind: types.Pointer,
473501
Elem: &types.Type{Kind: types.Struct, Name: types.Name{Package: "pkgname", Name: "typename"}},
474502
},
475-
Parameters: []*types.Type{
503+
Parameters: []*types.ParamResult{
476504
{
477-
Kind: types.Pointer,
478-
Elem: &types.Type{Kind: types.Struct, Name: types.Name{Package: "pkgname", Name: "typename"}},
505+
Type: &types.Type{
506+
Kind: types.Pointer,
507+
Elem: &types.Type{Kind: types.Struct, Name: types.Name{Package: "pkgname", Name: "typename"}},
508+
},
479509
},
480510
},
481-
Results: []*types.Type{},
511+
Results: []*types.ParamResult{},
482512
},
483513
},
484514
},

staging/src/k8s.io/code-generator/cmd/defaulter-gen/generators/defaulter.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -165,7 +165,7 @@ func getManualDefaultingFunctions(context *generator.Context, pkg *types.Package
165165
if len(signature.Results) != 0 {
166166
continue
167167
}
168-
inType := signature.Parameters[0]
168+
inType := signature.Parameters[0].Type
169169
if inType.Kind != types.Pointer {
170170
continue
171171
}

0 commit comments

Comments
 (0)