Subject: [bug#68763] [PATCH v2 4/7] gnu: Add go-structlayout.

From: Nicolas Graves <[email-masked]>
Date: Sat, 27 Jan 2024 19:21:29 +0100

* gnu/packages/golang-check.scm (go-structlayout): New variable.

Change-Id: I7440cdf75238fc73451cefc73b3ce3eb3d4da323
---
 gnu/packages/golang-check.scm | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/gnu/packages/golang-check.scm b/gnu/packages/golang-check.scm
index 66114050f3..13f38dc249 100644
--- a/gnu/packages/golang-check.scm
+++ b/gnu/packages/golang-check.scm
@@ -109,6 +109,20 @@ (define-public go-staticcheck
 Using static analysis, it finds bugs and performance issues, offers
 simplifications, and enforces style rules.")))
 
+(define-public go-structlayout
+  (package
+    (inherit go-honnef-co-go-tools)
+    (name "go-structlayout")
+    (arguments
+     `(#:import-path "honnef.co/go/tools/cmd/structlayout"
+       #:unpack-path "honnef.co/go/tools"
+       #:install-source? #f))
+    (synopsis "Display the layout (field sizes and padding) of structs in Go.")
+    (description "This package prints the layout of a struct in Go, which is
+the byte offset and size of each field, respecting padding.  This information
+is printed in human-readable form by default, or as JSON with the @code{-json}
+flag.")))
+
 (define-public go-github-com-alecthomas-assert
   (let ((commit "405dbfeb8e38effee6e723317226e93fff912d06")
         (revision "1"))
-- 
2.41.0