github.com/wolfd/bazel-gazelle@v0.14.0/internal/language/go/def.bzl (about)

     1  load("@io_bazel_rules_go//go:def.bzl", "go_context", "go_rule")
     2  
     3  def _std_package_list_impl(ctx):
     4      go = go_context(ctx)
     5      args = ctx.actions.args()
     6      args.add_all([go.package_list, ctx.outputs.out])
     7      ctx.actions.run(
     8          inputs = [go.package_list],
     9          outputs = [ctx.outputs.out],
    10          executable = ctx.executable._gen_std_package_list,
    11          arguments = [args],
    12          mnemonic = "GoStdPackageList",
    13      )
    14      return [DefaultInfo(files = depset([ctx.outputs.out]))]
    15  
    16  std_package_list = go_rule(
    17      _std_package_list_impl,
    18      attrs = {
    19          "out": attr.output(mandatory = True),
    20          "_gen_std_package_list": attr.label(
    21              default = "//internal/language/go/gen_std_package_list",
    22              cfg = "host",
    23              executable = True,
    24          ),
    25      },
    26  )