summaryrefslogtreecommitdiffhomepage
path: root/pkg/ilist
diff options
context:
space:
mode:
Diffstat (limited to 'pkg/ilist')
-rw-r--r--pkg/ilist/BUILD15
-rw-r--r--pkg/ilist/list.go4
2 files changed, 14 insertions, 5 deletions
diff --git a/pkg/ilist/BUILD b/pkg/ilist/BUILD
index b26a39132..e32f26ffa 100644
--- a/pkg/ilist/BUILD
+++ b/pkg/ilist/BUILD
@@ -1,15 +1,28 @@
package(licenses = ["notice"]) # Apache 2.0
load("//tools/go_generics:defs.bzl", "go_template", "go_template_instance")
-load("//tools/go_stateify:defs.bzl", "go_library", "go_test")
+load("//tools/go_stateify:defs.bzl", "go_library", "go_stateify", "go_test")
+
+go_stateify(
+ name = "list_state",
+ srcs = [
+ "interface_list.go",
+ ],
+ out = "interface_list_state.go",
+ package = "ilist",
+)
go_library(
name = "ilist",
srcs = [
"interface_list.go",
+ "interface_list_state.go",
],
importpath = "gvisor.googlesource.com/gvisor/pkg/ilist",
visibility = ["//visibility:public"],
+ deps = [
+ "//pkg/state",
+ ],
)
go_template_instance(
diff --git a/pkg/ilist/list.go b/pkg/ilist/list.go
index a88b82196..5efb6c072 100644
--- a/pkg/ilist/list.go
+++ b/pkg/ilist/list.go
@@ -36,8 +36,6 @@ type Linker interface {
// for e := l.Front(); e != nil; e = e.Next() {
// // do something with e.
// }
-//
-// +stateify savable
type List struct {
head Linker
tail Linker
@@ -157,8 +155,6 @@ func (l *List) Remove(e Linker) {
// Entry is a default implementation of Linker. Users can add anonymous fields
// of this type to their structs to make them automatically implement the
// methods needed by List.
-//
-// +stateify savable
type Entry struct {
next Linker
prev Linker