...

Source file src/go.einride.tech/aip/cmd/protoc-gen-go-aip/main.go

Documentation: go.einride.tech/aip/cmd/protoc-gen-go-aip

     1  package main
     2  
     3  import (
     4  	"flag"
     5  	"log"
     6  	"os"
     7  	"path/filepath"
     8  
     9  	"go.einride.tech/aip/cmd/protoc-gen-go-aip/internal/genaip"
    10  	"google.golang.org/protobuf/compiler/protogen"
    11  )
    12  
    13  func main() {
    14  	log.SetFlags(0)
    15  	if len(os.Args) == 2 && os.Args[1] == "--version" {
    16  		log.Printf("%v %v\n", filepath.Base(os.Args[0]), genaip.PluginVersion)
    17  		os.Exit(0)
    18  	}
    19  	var (
    20  		flags                      flag.FlagSet
    21  		includeResourceDefinitions = flags.Bool(
    22  			"include_resource_definitions",
    23  			true,
    24  			"set to false to exclude resource definitions from code generation",
    25  		)
    26  	)
    27  	protogen.Options{
    28  		ParamFunc: flags.Set,
    29  	}.Run(func(plugin *protogen.Plugin) error {
    30  		return genaip.Run(plugin, genaip.Config{
    31  			IncludeResourceDefinitions: *includeResourceDefinitions,
    32  		})
    33  	})
    34  }
    35  

View as plain text