mirror of
https://github.com/zeek/zeek.git
synced 2025-10-02 06:38:20 +00:00
107 lines
3.2 KiB
Text
107 lines
3.2 KiB
Text
# @TEST-EXEC: unset BRO_DISABLE_BROXYGEN; bro -b %INPUT >out
|
|
# @TEST-EXEC: btest-diff out
|
|
|
|
##! This is a test script.
|
|
##! With some summary comments.
|
|
|
|
## Hello world. This is an option.
|
|
## With some more description here.
|
|
## And here.
|
|
const myvar = 7 &redef; ##< Maybe just one more.
|
|
|
|
## This function prints a string line by line.
|
|
##
|
|
## lines: A string to print line by line, w/ lines delimited by newline chars.
|
|
global print_lines: function(lines: string, prefix: string &default="");
|
|
|
|
## And some more comments on the function implementation.
|
|
function print_lines(lines: string, prefix: string)
|
|
{
|
|
local v = split_string(lines, /\n/);
|
|
|
|
for ( i in v )
|
|
print fmt("%s%s", prefix, v[i]);
|
|
}
|
|
|
|
function print_comments(name: string, func: function(name: string): string)
|
|
{
|
|
print fmt("%s:", name);
|
|
print_lines(func(name), " ");
|
|
}
|
|
|
|
## This is an alias for count.
|
|
type mytype: count;
|
|
|
|
## My record type.
|
|
type myrecord: record {
|
|
## The first field.
|
|
## Does something...
|
|
aaa: count; ##< Done w/ aaa.
|
|
## The second field.
|
|
bbb: string; ##< Done w/ bbb.
|
|
##< No really, done w/ bbb.
|
|
## Third field.
|
|
ccc: int; ##< Done w/ ccc.
|
|
## Fourth field.
|
|
ddd: interval; ##< Done w/ ddd.
|
|
};
|
|
|
|
|
|
## My enum type;
|
|
type myenum: enum {
|
|
## First enum value.
|
|
## I know, the name isn't clever.
|
|
FIRST, ##< Done w/ first.
|
|
## Second enum value.
|
|
SECOND, ##< Done w/ second.
|
|
## Third enum value.
|
|
THIRD, ##< Done w/ third.
|
|
##< Done w/ third again.
|
|
## SIC.
|
|
## It's a programming language.
|
|
FORTH ##< Using Reverse Polish Notation.
|
|
##< Done w/ forth.
|
|
};
|
|
|
|
redef record myrecord += {
|
|
## First redef'd field.
|
|
## With two lines of comments.
|
|
eee: count &optional; ##< And two post-notation comments.
|
|
##< Done w/ eee.
|
|
## Second redef'd field.
|
|
fff: count &optional; ##< Done w/ fff.
|
|
## Third redef'd field.
|
|
ggg: count &optional; ##< Done w/ ggg.
|
|
};
|
|
|
|
redef enum myenum += {
|
|
## First redef'd enum val.
|
|
FIFTH, ##< Done w/ fifth.
|
|
## Second redef'd enum val.
|
|
SIXTH, ##< Done w/ sixth.
|
|
## Third redef'd enum val.
|
|
## Lucky number seven.
|
|
SEVENTH, ##< Still works with comma.
|
|
##< Done w/ seventh.
|
|
};
|
|
|
|
print_lines(get_script_comments(@DIR + "/" + @FILENAME));
|
|
print_comments("myvar", get_identifier_comments);
|
|
print_comments("print_lines", get_identifier_comments);
|
|
print_comments("mytype", get_identifier_comments);
|
|
print_comments("myrecord", get_identifier_comments);
|
|
print_comments("myrecord$aaa", get_record_field_comments);
|
|
print_comments("myrecord$bbb", get_record_field_comments);
|
|
print_comments("myrecord$ccc", get_record_field_comments);
|
|
print_comments("myrecord$ddd", get_record_field_comments);
|
|
print_comments("myrecord$eee", get_record_field_comments);
|
|
print_comments("myrecord$fff", get_record_field_comments);
|
|
print_comments("myrecord$ggg", get_record_field_comments);
|
|
print_comments("myenum", get_identifier_comments);
|
|
print_comments("FIRST", get_identifier_comments);
|
|
print_comments("SECOND", get_identifier_comments);
|
|
print_comments("THIRD", get_identifier_comments);
|
|
print_comments("FORTH", get_identifier_comments);
|
|
print_comments("FIFTH", get_identifier_comments);
|
|
print_comments("SIXTH", get_identifier_comments);
|
|
print_comments("SEVENTH", get_identifier_comments);
|