about summary refs log tree commit diff stats
path: root/gomponents_generic.go
diff options
context:
space:
mode:
Diffstat (limited to 'gomponents_generic.go')
-rw-r--r--gomponents_generic.go13
1 files changed, 13 insertions, 0 deletions
diff --git a/gomponents_generic.go b/gomponents_generic.go
new file mode 100644
index 0000000..6e6500b
--- /dev/null
+++ b/gomponents_generic.go
@@ -0,0 +1,13 @@
+//go:build go1.18
+// +build go1.18
+
+package gomponents
+
+// Map a slice of anything to a slice of Nodes.
+func Map[T any](ts []T, cb func(T) Node) []Node {
+	var nodes []Node
+	for _, t := range ts {
+		nodes = append(nodes, cb(t))
+	}
+	return nodes
+}