mirror of
https://github.com/zeek/zeek.git
synced 2025-10-02 22:58:20 +00:00

This is based on commit 2731def9159247e6da8a3191783c89683363689c from the zeek-docs repo.
197 lines
6.4 KiB
ReStructuredText
197 lines
6.4 KiB
ReStructuredText
:tocdepth: 3
|
|
|
|
base/utils/queue.zeek
|
|
=====================
|
|
.. zeek:namespace:: Queue
|
|
|
|
A FIFO queue.
|
|
|
|
:Namespace: Queue
|
|
|
|
Summary
|
|
~~~~~~~
|
|
Types
|
|
#####
|
|
================================================= ==========================================
|
|
:zeek:type:`Queue::Queue`: :zeek:type:`record` The internal data structure for the queue.
|
|
:zeek:type:`Queue::Settings`: :zeek:type:`record` Settings for initializing the queue.
|
|
================================================= ==========================================
|
|
|
|
Redefinitions
|
|
#############
|
|
============================================== ==========================================================================================
|
|
:zeek:type:`Queue::Queue`: :zeek:type:`record`
|
|
|
|
:New Fields: :zeek:type:`Queue::Queue`
|
|
|
|
initialized: :zeek:type:`bool` :zeek:attr:`&default` = ``F`` :zeek:attr:`&optional`
|
|
|
|
vals: :zeek:type:`table` [:zeek:type:`count`] of :zeek:type:`any` :zeek:attr:`&optional`
|
|
|
|
settings: :zeek:type:`Queue::Settings` :zeek:attr:`&optional`
|
|
|
|
top: :zeek:type:`count` :zeek:attr:`&default` = ``0`` :zeek:attr:`&optional`
|
|
|
|
bottom: :zeek:type:`count` :zeek:attr:`&default` = ``0`` :zeek:attr:`&optional`
|
|
|
|
size: :zeek:type:`count` :zeek:attr:`&default` = ``0`` :zeek:attr:`&optional`
|
|
============================================== ==========================================================================================
|
|
|
|
Functions
|
|
#########
|
|
=================================================== ==============================================================
|
|
:zeek:id:`Queue::get`: :zeek:type:`function` Get a value from the end of a queue.
|
|
:zeek:id:`Queue::get_vector`: :zeek:type:`function` Get the contents of the queue as a vector.
|
|
:zeek:id:`Queue::init`: :zeek:type:`function` Initialize a queue record structure.
|
|
:zeek:id:`Queue::len`: :zeek:type:`function` Get the number of items in a queue.
|
|
:zeek:id:`Queue::merge`: :zeek:type:`function` Merge two queues together.
|
|
:zeek:id:`Queue::peek`: :zeek:type:`function` Peek at the value at the end of the queue without removing it.
|
|
:zeek:id:`Queue::put`: :zeek:type:`function` Put a value onto the beginning of a queue.
|
|
=================================================== ==============================================================
|
|
|
|
|
|
Detailed Interface
|
|
~~~~~~~~~~~~~~~~~~
|
|
Types
|
|
#####
|
|
.. zeek:type:: Queue::Queue
|
|
:source-code: base/utils/queue.zeek 15 16
|
|
|
|
:Type: :zeek:type:`record`
|
|
|
|
|
|
.. zeek:field:: initialized :zeek:type:`bool` :zeek:attr:`&default` = ``F`` :zeek:attr:`&optional`
|
|
|
|
|
|
.. zeek:field:: vals :zeek:type:`table` [:zeek:type:`count`] of :zeek:type:`any` :zeek:attr:`&optional`
|
|
|
|
|
|
.. zeek:field:: settings :zeek:type:`Queue::Settings` :zeek:attr:`&optional`
|
|
|
|
|
|
.. zeek:field:: top :zeek:type:`count` :zeek:attr:`&default` = ``0`` :zeek:attr:`&optional`
|
|
|
|
|
|
.. zeek:field:: bottom :zeek:type:`count` :zeek:attr:`&default` = ``0`` :zeek:attr:`&optional`
|
|
|
|
|
|
.. zeek:field:: size :zeek:type:`count` :zeek:attr:`&default` = ``0`` :zeek:attr:`&optional`
|
|
|
|
|
|
The internal data structure for the queue.
|
|
|
|
.. zeek:type:: Queue::Settings
|
|
:source-code: base/utils/queue.zeek 7 12
|
|
|
|
:Type: :zeek:type:`record`
|
|
|
|
|
|
.. zeek:field:: max_len :zeek:type:`count` :zeek:attr:`&optional`
|
|
|
|
If a maximum length is set for the queue
|
|
it will maintain itself at that
|
|
maximum length automatically.
|
|
|
|
|
|
Settings for initializing the queue.
|
|
|
|
Functions
|
|
#########
|
|
.. zeek:id:: Queue::get
|
|
:source-code: base/utils/queue.zeek 105 111
|
|
|
|
:Type: :zeek:type:`function` (q: :zeek:type:`Queue::Queue`) : :zeek:type:`any`
|
|
|
|
Get a value from the end of a queue.
|
|
|
|
|
|
:param q: The queue to get the value from.
|
|
|
|
|
|
:returns: The value gotten from the queue.
|
|
|
|
.. zeek:id:: Queue::get_vector
|
|
:source-code: base/utils/queue.zeek 140 155
|
|
|
|
:Type: :zeek:type:`function` (q: :zeek:type:`Queue::Queue`, ret: :zeek:type:`vector` of :zeek:type:`any`) : :zeek:type:`void`
|
|
|
|
Get the contents of the queue as a vector.
|
|
|
|
|
|
:param q: The queue.
|
|
|
|
|
|
:param ret: A vector containing the current contents of the queue
|
|
as the type of ret.
|
|
|
|
.. zeek:id:: Queue::init
|
|
:source-code: base/utils/queue.zeek 88 95
|
|
|
|
:Type: :zeek:type:`function` (s: :zeek:type:`Queue::Settings` :zeek:attr:`&default` = ``[]`` :zeek:attr:`&optional`) : :zeek:type:`Queue::Queue`
|
|
|
|
Initialize a queue record structure.
|
|
|
|
|
|
:param s: A record which configures the queue.
|
|
|
|
|
|
:returns: An opaque queue record.
|
|
|
|
.. zeek:id:: Queue::len
|
|
:source-code: base/utils/queue.zeek 135 138
|
|
|
|
:Type: :zeek:type:`function` (q: :zeek:type:`Queue::Queue`) : :zeek:type:`count`
|
|
|
|
Get the number of items in a queue.
|
|
|
|
|
|
:param q: The queue.
|
|
|
|
|
|
:returns: The length of the queue.
|
|
|
|
.. zeek:id:: Queue::merge
|
|
:source-code: base/utils/queue.zeek 118 133
|
|
|
|
:Type: :zeek:type:`function` (q1: :zeek:type:`Queue::Queue`, q2: :zeek:type:`Queue::Queue`) : :zeek:type:`Queue::Queue`
|
|
|
|
Merge two queues together. If any settings are applied
|
|
to the queues, the settings from *q1* are used for the new
|
|
merged queue.
|
|
|
|
|
|
:param q1: The first queue. Settings are taken from here.
|
|
|
|
|
|
:param q2: The second queue.
|
|
|
|
|
|
:returns: A new queue from merging the other two together.
|
|
|
|
.. zeek:id:: Queue::peek
|
|
:source-code: base/utils/queue.zeek 113 116
|
|
|
|
:Type: :zeek:type:`function` (q: :zeek:type:`Queue::Queue`) : :zeek:type:`any`
|
|
|
|
Peek at the value at the end of the queue without removing it.
|
|
|
|
|
|
:param q: The queue to get the value from.
|
|
|
|
|
|
:returns: The value at the end of the queue.
|
|
|
|
.. zeek:id:: Queue::put
|
|
:source-code: base/utils/queue.zeek 97 103
|
|
|
|
:Type: :zeek:type:`function` (q: :zeek:type:`Queue::Queue`, val: :zeek:type:`any`) : :zeek:type:`void`
|
|
|
|
Put a value onto the beginning of a queue.
|
|
|
|
|
|
:param q: The queue to put the value into.
|
|
|
|
|
|
:param val: The value to insert into the queue.
|
|
|
|
|