Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 31 May 2021 23:23:55 GMT
From:      Warner Losh <imp@FreeBSD.org>
To:        doc-committers@FreeBSD.org, dev-commits-doc-all@FreeBSD.org
Subject:   git: 5fdd3fefdd - main - arch-handbook: Document kobj HEADER keyword
Message-ID:  <202105312323.14VNNtCK066393@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch main has been updated by imp:

URL: https://cgit.FreeBSD.org/doc/commit/?id=5fdd3fefdd8c5ded4821f9969c650fc0ed9ba642

commit 5fdd3fefdd8c5ded4821f9969c650fc0ed9ba642
Author:     Warner Losh <imp@FreeBSD.org>
AuthorDate: 2021-04-27 21:00:46 +0000
Commit:     Warner Losh <imp@FreeBSD.org>
CommitDate: 2021-05-31 23:23:34 +0000

    arch-handbook: Document kobj HEADER keyword
    
    The HEADER keyword is like the CODE keyword, except the lines go into
    the .h file.
    
    Sponsored by:           Netflix
---
 .../content/en/books/arch-handbook/kobj/_index.adoc      | 16 +++++++++++++++-
 1 file changed, 15 insertions(+), 1 deletion(-)

diff --git a/documentation/content/en/books/arch-handbook/kobj/_index.adoc b/documentation/content/en/books/arch-handbook/kobj/_index.adoc
index 8a91c0132c..32b64e3bbd 100644
--- a/documentation/content/en/books/arch-handbook/kobj/_index.adoc
+++ b/documentation/content/en/books/arch-handbook/kobj/_index.adoc
@@ -118,7 +118,7 @@ KOBJMETHOD(NAME, FUNC)
 The first step in using Kobj is to create an Interface.
 Creating the interface involves creating a template that the script [.filename]#src/sys/kern/makeobjops.pl# can use to generate the header and code for the method declarations and method lookup functions.
 
-Within this template the following keywords are used: `#include`, `INTERFACE`, `CODE`, `METHOD`, `STATICMETHOD`, and `DEFAULT`.
+Within this template the following keywords are used: `#include`, `INTERFACE`, `CODE`, `HEADER`, `METHOD`, `STATICMETHOD`, and `DEFAULT`.
 
 The `#include` statement and what follows it is copied verbatim to the head of the generated code file.
 
@@ -155,6 +155,20 @@ CODE {
 };
 ....
 
+The `HEADER` keyword copies its arguments verbatim into the header file.
+Its syntax is `HEADER { [whatever] };`
+
+For example:
+
+[.programlisting]
+....
+HEADER {
+        struct mumble;
+        struct grumble;
+}
+};
+....
+
 The `METHOD` keyword describes a method.
 Its syntax is `METHOD [return type] [method name] { [object [, arguments]] };`
 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202105312323.14VNNtCK066393>