2020-01-27 18:04:07 +00:00
|
|
|
load("//tools:defs.bzl", "go_library", "go_test")
|
2018-09-04 16:18:00 +00:00
|
|
|
load("//tools/go_generics:defs.bzl", "go_template_instance")
|
2018-04-27 17:37:02 +00:00
|
|
|
|
2019-10-16 23:27:55 +00:00
|
|
|
package(licenses = ["notice"])
|
|
|
|
|
2018-09-04 16:18:00 +00:00
|
|
|
go_template_instance(
|
|
|
|
name = "weak_ref_list",
|
|
|
|
out = "weak_ref_list.go",
|
|
|
|
package = "refs",
|
|
|
|
prefix = "weakRef",
|
|
|
|
template = "//pkg/ilist:generic_list",
|
|
|
|
types = {
|
|
|
|
"Element": "*WeakRef",
|
|
|
|
"Linker": "*WeakRef",
|
|
|
|
},
|
|
|
|
)
|
|
|
|
|
2018-04-27 17:37:02 +00:00
|
|
|
go_library(
|
|
|
|
name = "refs",
|
|
|
|
srcs = [
|
|
|
|
"refcounter.go",
|
|
|
|
"refcounter_state.go",
|
2018-09-04 16:18:00 +00:00
|
|
|
"weak_ref_list.go",
|
2018-04-27 17:37:02 +00:00
|
|
|
],
|
|
|
|
visibility = ["//:sandbox"],
|
2019-06-29 03:06:33 +00:00
|
|
|
deps = [
|
|
|
|
"//pkg/log",
|
2020-01-10 06:00:42 +00:00
|
|
|
"//pkg/sync",
|
2019-06-29 03:06:33 +00:00
|
|
|
],
|
2018-04-27 17:37:02 +00:00
|
|
|
)
|
|
|
|
|
|
|
|
go_test(
|
|
|
|
name = "refs_test",
|
|
|
|
size = "small",
|
|
|
|
srcs = ["refcounter_test.go"],
|
2020-01-27 18:04:07 +00:00
|
|
|
library = ":refs",
|
2020-01-10 06:00:42 +00:00
|
|
|
deps = ["//pkg/sync"],
|
2018-04-27 17:37:02 +00:00
|
|
|
)
|