generator

The generator module contains the code generation logic.

The core of this work is around the Generator class, which divides up the processing of individual templates.

class gapic.generator.generator.Generator(opts: gapic.utils.options.Options)[source]

A protoc code generator for client libraries.

This class provides an interface for getting a CodeGeneratorResponse for an API schema object (which it does through rendering templates).

Parameters
  • opts (Options) – An options instance.

  • templates (str) – Optional. Path to the templates to be rendered. If this is not provided, the templates included with this application are used.

get_response(api_schema: gapic.schema.api.API, opts: gapic.utils.options.Options)google.protobuf.compiler.plugin_pb2.CodeGeneratorResponse[source]

Return a CodeGeneratorResponse for this library.

This is a complete response to be written to (usually) stdout, and thus read by protoc.

Parameters
  • api_schema (API) – An API schema object.

  • opts (Options) – An options instance.

Returns

A response describing appropriate files and contents. See plugin.proto.

Return type

CodeGeneratorResponse