mirror of
https://github.com/zeek/zeek.git
synced 2025-10-02 14:48:21 +00:00
GH-1860: Add double_to_int() bif
This commit is contained in:
parent
f2b74d21f7
commit
7de9a7d76f
3 changed files with 29 additions and 0 deletions
13
src/zeek.bif
13
src/zeek.bif
|
@ -2422,6 +2422,19 @@ function int_to_count%(n: int%): count
|
||||||
## d: The :zeek:type:`double` to convert.
|
## d: The :zeek:type:`double` to convert.
|
||||||
##
|
##
|
||||||
## Returns: The :zeek:type:`double` *d* as unsigned integer, or 0 if *d* < 0.0.
|
## Returns: The :zeek:type:`double` *d* as unsigned integer, or 0 if *d* < 0.0.
|
||||||
|
## The value returned follows typical rounding rules, as implemented
|
||||||
|
## by rint().
|
||||||
|
function double_to_int%(d: double%): count
|
||||||
|
%{
|
||||||
|
return zeek::val_mgr->Int(bro_int_t(rint(d)));
|
||||||
|
%}
|
||||||
|
|
||||||
|
## Converts a :zeek:type:`double` to a :zeek:type:`int`.
|
||||||
|
##
|
||||||
|
## d: The :zeek:type:`double` to convert.
|
||||||
|
##
|
||||||
|
## Returns: The :zeek:type:`double` *d* as signed integer. The value returned
|
||||||
|
## follows typical rounding rules, as implemented by rint().
|
||||||
##
|
##
|
||||||
## .. zeek:see:: double_to_time
|
## .. zeek:see:: double_to_time
|
||||||
function double_to_count%(d: double%): count
|
function double_to_count%(d: double%): count
|
||||||
|
|
|
@ -3,3 +3,7 @@
|
||||||
-1
|
-1
|
||||||
4294967296
|
4294967296
|
||||||
0
|
0
|
||||||
|
3
|
||||||
|
4
|
||||||
|
-3
|
||||||
|
-4
|
||||||
|
|
|
@ -8,4 +8,16 @@ event zeek_init()
|
||||||
print to_int("-1");
|
print to_int("-1");
|
||||||
print to_int("4294967296");
|
print to_int("4294967296");
|
||||||
print to_int("not an int");
|
print to_int("not an int");
|
||||||
|
|
||||||
|
local a: double = 3.14;
|
||||||
|
print double_to_int(a);
|
||||||
|
|
||||||
|
local b: double = 3.9;
|
||||||
|
print double_to_int(b);
|
||||||
|
|
||||||
|
local c: double = -3.14;
|
||||||
|
print double_to_int(c);
|
||||||
|
|
||||||
|
local d: double = -3.9;
|
||||||
|
print double_to_int(d);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue