| // Copyright 2019 The Fuchsia Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| package main |
| |
| import ( |
| "go.fuchsia.dev/fuchsia/tools/fidl/gidl/backend/cpp" |
| "go.fuchsia.dev/fuchsia/tools/fidl/gidl/backend/driver_cpp" |
| "go.fuchsia.dev/fuchsia/tools/fidl/gidl/backend/driver_llcpp" |
| "go.fuchsia.dev/fuchsia/tools/fidl/gidl/backend/dynfidl" |
| "go.fuchsia.dev/fuchsia/tools/fidl/gidl/backend/fuchsia_controller" |
| "go.fuchsia.dev/fuchsia/tools/fidl/gidl/backend/fuzzer_corpus" |
| "go.fuchsia.dev/fuchsia/tools/fidl/gidl/backend/golang" |
| "go.fuchsia.dev/fuchsia/tools/fidl/gidl/backend/hlcpp" |
| "go.fuchsia.dev/fuchsia/tools/fidl/gidl/backend/llcpp" |
| "go.fuchsia.dev/fuchsia/tools/fidl/gidl/backend/reference" |
| "go.fuchsia.dev/fuchsia/tools/fidl/gidl/backend/rust" |
| "go.fuchsia.dev/fuchsia/tools/fidl/gidl/backend/rust_codec" |
| "go.fuchsia.dev/fuchsia/tools/fidl/gidl/lib/cli" |
| "go.fuchsia.dev/fuchsia/tools/fidl/gidl/lib/ir" |
| ) |
| |
| var generators = map[ir.OutputType]map[ir.Language]cli.Generator{ |
| ir.OutputTypeConformance: { |
| ir.LanguageCpp: cpp.GenerateConformanceTests, |
| ir.LanguageDynfidl: dynfidl.GenerateConformanceTests, |
| ir.LanguageFuchsiaController: fuchsia_controller.GenerateConformanceTests, |
| ir.LanguageFuzzerCorpus: fuzzer_corpus.GenerateConformanceTests, |
| ir.LanguageGo: golang.GenerateConformanceTests, |
| ir.LanguageHlcpp: hlcpp.GenerateConformanceTests, |
| ir.LanguageLlcpp: llcpp.GenerateConformanceTests, |
| ir.LanguageRust: rust.GenerateConformanceTests, |
| ir.LanguageRustCodec: rust_codec.GenerateConformanceTests, |
| }, |
| ir.OutputTypeBenchmark: { |
| ir.LanguageCpp: cpp.GenerateBenchmarks, |
| ir.LanguageDriverCpp: driver_cpp.GenerateBenchmarks, |
| ir.LanguageDriverLlcpp: driver_llcpp.GenerateBenchmarks, |
| ir.LanguageGo: golang.GenerateBenchmarks, |
| ir.LanguageHlcpp: hlcpp.GenerateBenchmarks, |
| ir.LanguageLlcpp: llcpp.GenerateBenchmarks, |
| ir.LanguageReference: reference.GenerateBenchmarks, |
| ir.LanguageRust: rust.GenerateBenchmarks, |
| }, |
| ir.OutputTypeMeasureTape: { |
| ir.LanguageRust: rust.GenerateMeasureTapeTests, |
| }, |
| } |
| |
| func main() { |
| cli.Main(generators) |
| } |