-
Notifications
You must be signed in to change notification settings - Fork 115
/
dotnet.go
70 lines (65 loc) · 2.27 KB
/
dotnet.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
// Copyright 2016-2019, Pulumi Corporation.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// nolint: nakedret
package gen
import (
"fmt"
)
var pascalCaseMapping = map[string]string{
"admissionregistration": "AdmissionRegistration",
"apps": "Apps",
"auditregistration": "AuditRegistraion",
"authentication": "Authentication",
"apiextensions": "ApiExtensions",
"authorization": "Authorization",
"autoscaling": "Autoscaling",
"apiregistration": "ApiRegistration",
"batch": "Batch",
"certificates": "Certificates",
"coordination": "Coordination",
"core": "Core",
"discovery": "Discovery",
"events": "Events",
"extensions": "Extensions",
"flowcontrol": "FlowControl",
"networking": "Networking",
"meta": "Meta",
"node": "Node",
"policy": "Policy",
"rbac": "Rbac",
"resource": "Resource",
"scheduling": "Scheduling",
"settings": "Settings",
"storage": "Storage",
"v1": "V1",
"v1alpha1": "V1Alpha1",
"v1alpha2": "V1Alpha2",
"v1beta1": "V1Beta1",
"v1beta2": "V1Beta2",
"v1beta3": "V1Beta3",
"v2": "V2",
"v2alpha1": "V2Alpha1",
"v2beta1": "V2Beta1",
"v2beta2": "V2Beta2",
// Not sure what these are - but they show up in input and output types.
"version": "Version",
"pkg": "Pkg",
}
func pascalCase(name string) string {
pascal, ok := pascalCaseMapping[name]
if !ok {
panic(fmt.Sprintf("no case mapping for %q", name))
}
return pascal
}