Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1842)

Unified Diff: mojom/generators/go/translator/translator.go

Issue 2082173002: New go generator shakedown. (Closed) Base URL: https://github.com/domokit/mojo.git@master
Patch Set: Created 4 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: mojom/generators/go/translator/translator.go
diff --git a/mojom/generators/go/translator/translator.go b/mojom/generators/go/translator/translator.go
index 96ad8b0ea2068d0e44a42fa7506275710eb2bdd7..25e05b01d04e5952838fe7cd743058bf2d23f123 100644
--- a/mojom/generators/go/translator/translator.go
+++ b/mojom/generators/go/translator/translator.go
@@ -36,27 +36,42 @@ func (t *translator) TranslateMojomFile(fileName string) (tmplFile *TmplFile) {
tmplFile.PackageName = fileNameToPackageName(fileName)
+ if file.DeclaredMojomObjects.Structs == nil {
+ file.DeclaredMojomObjects.Structs = &[]string{}
+ }
tmplFile.Structs = make([]*StructTemplate, len(*file.DeclaredMojomObjects.Structs))
for i, typeKey := range *file.DeclaredMojomObjects.Structs {
tmplFile.Structs[i] = t.translateMojomStruct(typeKey)
}
+ if file.DeclaredMojomObjects.Unions == nil {
+ file.DeclaredMojomObjects.Unions = &[]string{}
+ }
tmplFile.Unions = make([]*UnionTemplate, len(*file.DeclaredMojomObjects.Unions))
for i, typeKey := range *file.DeclaredMojomObjects.Unions {
tmplFile.Unions[i] = t.translateMojomUnion(typeKey)
}
+ if file.DeclaredMojomObjects.TopLevelEnums == nil {
+ file.DeclaredMojomObjects.TopLevelEnums = &[]string{}
+ }
+ if file.DeclaredMojomObjects.EmbeddedEnums == nil {
+ file.DeclaredMojomObjects.EmbeddedEnums = &[]string{}
+ }
topLevelEnumsNum := len(*file.DeclaredMojomObjects.TopLevelEnums)
- enumNum := len(*file.DeclaredMojomObjects.EmbeddedEnums) + topLevelEnumsNum
+ embeddedEnumsNum := len(*file.DeclaredMojomObjects.EmbeddedEnums)
+ enumNum := embeddedEnumsNum + topLevelEnumsNum
tmplFile.Enums = make([]*EnumTemplate, enumNum)
for i, typeKey := range *file.DeclaredMojomObjects.TopLevelEnums {
tmplFile.Enums[i] = t.translateMojomEnum(typeKey)
}
-
for i, typeKey := range *file.DeclaredMojomObjects.EmbeddedEnums {
tmplFile.Enums[i+topLevelEnumsNum] = t.translateMojomEnum(typeKey)
}
+ if file.DeclaredMojomObjects.Interfaces == nil {
+ file.DeclaredMojomObjects.Interfaces = &[]string{}
+ }
tmplFile.Interfaces = make([]*InterfaceTemplate, len(*file.DeclaredMojomObjects.Interfaces))
for i, typeKey := range *file.DeclaredMojomObjects.Interfaces {
tmplFile.Interfaces[i] = t.translateMojomInterface(typeKey)
@@ -194,8 +209,12 @@ func (t *translator) translateMojomMethod(mojomMethod mojom_types.MojomMethod, i
m.FullName = fmt.Sprintf("%s_%s", interfaceTemplate.PrivateName, m.MethodName)
m.Params = *t.translateMojomStructObject(mojomMethod.Parameters)
m.Params.Name = fmt.Sprintf("%s_Params", m.FullName)
- m.ResponseParams = t.translateMojomStructObject(*mojomMethod.ResponseParams)
- m.ResponseParams.Name = fmt.Sprintf("%s_ResponseParams", m.FullName)
+ m.Params.PrivateName = privateName(m.Params.Name)
+ if mojomMethod.ResponseParams != nil {
+ m.ResponseParams = t.translateMojomStructObject(*mojomMethod.ResponseParams)
+ m.ResponseParams.Name = fmt.Sprintf("%s_ResponseParams", m.FullName)
+ m.ResponseParams.PrivateName = privateName(m.ResponseParams.Name)
+ }
return m
}
« mojom/generators/go/templates/decoding.go ('K') | « mojom/generators/go/translator/mojom_file.go ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698