### BTest baseline data generated by btest-diff. Do not edit. Use "btest -U/-u" to update. Requires BTest >= 0.63.
.. zeek:id:: ZeekygenExample::Zeekygen_One
   :source-code: zeekygen/example.zeek 59 59

   :Type: :zeek:type:`Notice::Type`

   Any number of this type of comment
   will document "Zeekygen_One".

.. zeek:id:: ZeekygenExample::Zeekygen_Two
   :source-code: zeekygen/example.zeek 60 60

   :Type: :zeek:type:`Notice::Type`

   Any number of this type of comment
   will document "ZEEKYGEN_TWO".

.. zeek:id:: ZeekygenExample::Zeekygen_Three
   :source-code: zeekygen/example.zeek 62 62

   :Type: :zeek:type:`Notice::Type`


.. zeek:id:: ZeekygenExample::Zeekygen_Four
   :source-code: zeekygen/example.zeek 64 64

   :Type: :zeek:type:`Notice::Type`

   Omitting comments is fine, and so is mixing ``##`` and ``##<``, but
   it's probably best to use only one style consistently.

.. zeek:id:: ZeekygenExample::LOG
   :source-code: zeekygen/example.zeek 70 70

   :Type: :zeek:type:`Log::ID`


.. zeek:type:: ZeekygenExample::SimpleEnum
   :source-code: zeekygen/example.zeek 78 85

   :Type: :zeek:type:`enum`

      .. zeek:enum:: ZeekygenExample::ONE ZeekygenExample::SimpleEnum

         Documentation for particular enum values is added like this.
         And can also span multiple lines.

      .. zeek:enum:: ZeekygenExample::TWO ZeekygenExample::SimpleEnum

         Or this style is valid to document the preceding enum value.

      .. zeek:enum:: ZeekygenExample::THREE ZeekygenExample::SimpleEnum

      .. zeek:enum:: ZeekygenExample::FOUR ZeekygenExample::SimpleEnum

         And some documentation for "FOUR".

      .. zeek:enum:: ZeekygenExample::FIVE ZeekygenExample::SimpleEnum

         Also "FIVE".

   Documentation for the "SimpleEnum" type goes here.
   It can span multiple lines.

.. zeek:id:: ZeekygenExample::ONE
   :source-code: zeekygen/example.zeek 81 81

   :Type: :zeek:type:`ZeekygenExample::SimpleEnum`

   Documentation for particular enum values is added like this.
   And can also span multiple lines.

.. zeek:id:: ZeekygenExample::TWO
   :source-code: zeekygen/example.zeek 82 82

   :Type: :zeek:type:`ZeekygenExample::SimpleEnum`

   Or this style is valid to document the preceding enum value.

.. zeek:id:: ZeekygenExample::THREE
   :source-code: zeekygen/example.zeek 83 83

   :Type: :zeek:type:`ZeekygenExample::SimpleEnum`


.. zeek:id:: ZeekygenExample::FOUR
   :source-code: zeekygen/example.zeek 89 89

   :Type: :zeek:type:`ZeekygenExample::SimpleEnum`

   And some documentation for "FOUR".

.. zeek:id:: ZeekygenExample::FIVE
   :source-code: zeekygen/example.zeek 91 91

   :Type: :zeek:type:`ZeekygenExample::SimpleEnum`

   Also "FIVE".

.. zeek:type:: ZeekygenExample::SimpleRecord
   :source-code: zeekygen/example.zeek 97 101

   :Type: :zeek:type:`record`


   .. zeek:field:: field1 :zeek:type:`count`

      Counts something.


   .. zeek:field:: field2 :zeek:type:`bool`

      Toggles something.


   .. zeek:field:: field_ext :zeek:type:`string` :zeek:attr:`&optional`

      Document the extending field like this.
      Or here, like this.


   General documentation for a type "SimpleRecord" goes here.
   The way fields can be documented is similar to what's already seen
   for enums.

.. zeek:type:: ZeekygenExample::ComplexRecord
   :source-code: zeekygen/example.zeek 110 117

   :Type: :zeek:type:`record`


   .. zeek:field:: field1 :zeek:type:`count`

      Counts something.


   .. zeek:field:: field2 :zeek:type:`bool`

      Toggles something.


   .. zeek:field:: field3 :zeek:type:`ZeekygenExample::SimpleRecord`

      Zeekygen automatically tracks types
      and cross-references are automatically
      inserted into generated docs.


   .. zeek:field:: msg :zeek:type:`string` :zeek:attr:`&default` = ``"blah"`` :zeek:attr:`&optional`

      Attributes are self-documenting.

   :Attributes: :zeek:attr:`&redef`

   General documentation for a type "ComplexRecord" goes here.

.. zeek:type:: ZeekygenExample::Info
   :source-code: zeekygen/example.zeek 124 128

   :Type: :zeek:type:`record`


   .. zeek:field:: ts :zeek:type:`time` :zeek:attr:`&log`


   .. zeek:field:: uid :zeek:type:`string` :zeek:attr:`&log`


   .. zeek:field:: status :zeek:type:`count` :zeek:attr:`&log` :zeek:attr:`&optional`


   An example record to be used with a logging stream.
   Nothing special about it.  If another script redefs this type
   to add fields, the generated documentation will show all original
   fields plus the extensions and the scripts which contributed to it
   (provided they are also @load'ed).

.. zeek:id:: ZeekygenExample::an_option
   :source-code: zeekygen/example.zeek 132 132

   :Type: :zeek:type:`set` [:zeek:type:`addr`, :zeek:type:`addr`, :zeek:type:`string`]
   :Attributes: :zeek:attr:`&redef`
   :Default: ``{}``

   Add documentation for "an_option" here.
   The type/attribute information is all generated automatically.

.. zeek:id:: ZeekygenExample::option_with_init
   :source-code: zeekygen/example.zeek 135 135

   :Type: :zeek:type:`interval`
   :Attributes: :zeek:attr:`&redef`
   :Default: ``10.0 msecs``

   Default initialization will be generated automatically.
   More docs can be added here.

.. zeek:id:: ZeekygenExample::a_var
   :source-code: zeekygen/example.zeek 140 140

   :Type: :zeek:type:`bool`

   Put some documentation for "a_var" here.  Any global/non-const that
   isn't a function<...>/hook is classified as a "state variable"
   in the generated docs.

.. zeek:id:: ZeekygenExample::var_without_explicit_type
   :source-code: zeekygen/example.zeek 143 143

   :Type: :zeek:type:`string`
   :Default: ``"this works"``

   Types are inferred, that information is self-documenting.

.. zeek:id:: ZeekygenExample::summary_test
   :source-code: zeekygen/example.zeek 148 148

   :Type: :zeek:type:`string`

   The first sentence for a particular identifier's summary text ends here.
   And this second sentence doesn't show in the short description provided
   by the table of all identifiers declared by this script.

.. zeek:id:: ZeekygenExample::a_function
   :source-code: zeekygen/example.zeek 161 161

   :Type: :zeek:type:`function` (tag: :zeek:type:`string`, msg: :zeek:type:`string`) : :zeek:type:`string`

   Summarize purpose of "a_function" here.
   Give more details about "a_function" here.
   Separating the documentation of the params/return values with
   empty comments is optional, but improves readability of script.


   :param tag: Function arguments can be described
        like this.


   :param msg: Another param.


   :returns: Describe the return type here.

.. zeek:id:: ZeekygenExample::an_event
   :source-code: zeekygen/example.zeek 171 171

   :Type: :zeek:type:`event` (name: :zeek:type:`string`)

   Summarize "an_event" here.
   Give more details about "an_event" here.

   ZeekygenExample::a_function should not be confused as a parameter
   in the generated docs, but it also doesn't generate a cross-reference
   link.  Use the see role instead: :zeek:see:`ZeekygenExample::a_function`.


   :param name: Describe the argument here.

.. zeek:id:: ZeekygenExample::function_without_proto
   :source-code: zeekygen/example.zeek 176 184

   :Type: :zeek:type:`function` (tag: :zeek:type:`string`) : :zeek:type:`string`
   :Attributes: :zeek:attr:`&is_used`


.. zeek:type:: ZeekygenExample::PrivateRecord
   :source-code: zeekygen/example.zeek 190 193

   :Type: :zeek:type:`record`


   .. zeek:field:: field1 :zeek:type:`bool`


   .. zeek:field:: field2 :zeek:type:`count`



