Code
Hub
Workspaces
Following
Trending
Connect
MCP
copy
Index your code
hub
/
github.com/boazsegev/iodine
/ functions
Functions
1,281 in github.com/boazsegev/iodine
⨍
Functions
1,281
◇
Types & classes
139
↓ 128 callers
Function
fiobj_free
* Decreases an object's reference count, releasing memory and * resources. * * This function affects nested objects, meaning that when an Array or
ext/iodine/fiobject.h:447
↓ 126 callers
Function
fio_unlock
* Releases a spinlock. Releasing an unacquired lock will break it. * * Returns a non-zero value on success, or 0 if the lock was in an unlocked * s
ext/iodine/fio.h:3034
↓ 110 callers
Function
fiobj_str_write
* Writes data at the end of the string, resizing the string as required. * Returns the new length of the String */
ext/iodine/fiobj_str.c:258
↓ 95 callers
Function
fio_lock
Busy waits for the spinlock (CAREFUL). */
ext/iodine/fio.h:3047
↓ 83 callers
Function
fiobj_str_new
Creates a String object. Remember to use `fiobj_free`. */
ext/iodine/fiobj_str.c:134
↓ 65 callers
Function
fio_free
ext/iodine/fio.c:7651
↓ 65 callers
Function
fio_malloc
ext/iodine/fio.c:7645
↓ 48 callers
Function
fio_str_data
Returns a pointer (`char *`) to the String's content. */
ext/iodine/fio.h:3932
↓ 46 callers
Function
fiobj_hash_get2
* Returns a temporary handle to the object associated hashed key value. * * This function takes a `uintptr_t` Hash value (see `fio_siphash`) to * p
ext/iodine/fiobj_hash.c:337
↓ 44 callers
Function
fiobj_obj2hash
* Calculates an Objects's SipHash value for possible use as a HashMap key. * * The Object MUST answer to the fiobj_obj2cstr, or the result is unusab
ext/iodine/fiobject.h:552
↓ 41 callers
Function
fiobj_ary_push
* Pushes an object to the end of the Array. */
ext/iodine/fiobj_ary.c:153
↓ 40 callers
Function
fio_cli_get
Returns the argument's value as a NUL terminated C String. */
ext/iodine/fio_cli.c:390
↓ 39 callers
Function
fiobj_hash_string
ext/iodine/fiobject.h:562
↓ 39 callers
Function
malloc
ext/iodine/fio.c:8320
↓ 37 callers
Function
free
ext/iodine/fio.c:8322
↓ 33 callers
Function
fio_state_callback_add
Adds a callback to the list of callbacks to be called for the event. */
ext/iodine/fio.c:4045
↓ 33 callers
Function
fio_str_len
Returns the String's length in bytes. */
ext/iodine/fio.h:3927
↓ 31 callers
Function
fiobj_ary_index
* Returns a temporary object owned by the Array. * * Negative values are retrieved from the end of the array. i.e., `-1` * is the last item. */
ext/iodine/fiobj_ary.c:131
↓ 30 callers
Function
fiobj_true
ext/iodine/fiobject.h:88
↓ 27 callers
Function
fiobj_str_buf
Creates a buffer String object. Remember to use `fiobj_free`. */
ext/iodine/fiobj_str.c:108
↓ 26 callers
Method
call
returns the callback object (self).
examples/tcp_client.rb:51
↓ 26 callers
Function
fio_str_free
* Frees the String's resources and reinitializes the container. * * Note: if the container isn't allocated on the stack, it should be freed * separ
ext/iodine/fio.h:3848
↓ 26 callers
Function
fiobj_dup
* Copy by reference(!) - increases an object's (and any nested object's) * reference count. * * Always returns the value passed along. */
ext/iodine/fiobject.h:431
↓ 25 callers
Function
fio_close
* `fio_close` marks the connection for disconnection once all the data was * sent. The actual disconnection will be managed by the `fio_flush` functi
ext/iodine/fio.c:3579
↓ 24 callers
Function
fio_defer_perform
Performs all deferred functions until the queue had been depleted. */
ext/iodine/fio.c:1309
↓ 24 callers
Function
fiobj_hash_set
* Sets a key-value pair in the Hash, duplicating the Symbol and **moving** * the ownership of the object to the Hash. * * Returns -1 on error. */
ext/iodine/fiobj_hash.c:225
↓ 22 callers
Function
fiobj_str_resize
Resizes a String object, allocating more memory if required. */
ext/iodine/fiobj_str.c:233
↓ 22 callers
Function
http_set_header
* Sets a response header, taking ownership of the value object, but NOT the * name object (so name objects could be reused in future responses). *
ext/iodine/http.c:161
↓ 20 callers
Function
fio_state_callback_force
Forces all the existing callbacks to run, as if the event occurred. */
ext/iodine/fio.c:4084
↓ 20 callers
Function
fiobj_null
ext/iodine/fiobject.h:87
↓ 19 callers
Function
fio_force_close
* `fio_force_close` closes the connection immediately, without adhering to any * protocol restrictions and without sending any remaining data in the
ext/iodine/fio.c:3597
↓ 19 callers
Function
fiobj_ary_count
Returns the number of elements in the Array. */
ext/iodine/fiobj_ary.c:52
↓ 18 callers
Function
fio_last_tick
public API. */
ext/iodine/fio.c:625
↓ 18 callers
Function
fio_ls_embd_any
Tests if the list is NOT empty (contains any nodes). */
ext/iodine/fio.h:3310
↓ 18 callers
Function
fio_trylock
returns 0 if the lock was acquired and another value on failure. */
ext/iodine/fio.h:3021
↓ 17 callers
Function
fio_unsubscribe
Unsubscribes from a filter, pub/sub channel or pattern */
ext/iodine/fio.c:6322
↓ 17 callers
Function
fiobj_num_new
Creates a Number object. Remember to use `fiobj_free`. */
ext/iodine/fiobj_numbers.h:106
↓ 17 callers
Function
iodine_connection_fire_event
Fires a connection object's event */
ext/iodine/iodine_connection.c:793
↓ 16 callers
Function
fiobj_false
ext/iodine/fiobject.h:89
↓ 15 callers
Function
fio_force_event
ext/iodine/fio.c:2758
↓ 15 callers
Function
fio_is_closed
public API. */
ext/iodine/fio.c:612
↓ 15 callers
Function
fiobj_hash_new
* Creates a mutable empty Hash object. Use `fiobj_free` when done. * * Notice that these Hash objects are designed for smaller collections and * re
ext/iodine/fiobj_hash.c:186
↓ 15 callers
Function
fiobj_obj2num
* Returns an object's numerical value. * * If a String or Symbol are passed to the function, they will be * parsed assuming base 10 numerical data.
ext/iodine/fiobject.h:484
↓ 15 callers
Function
http_send_error
* Sends an HTTP error response. * * Returns -1 on error and 0 on success. * * AFTER THIS FUNCTION IS CALLED, THE `http_s` OBJECT IS NO LONGER VALI
ext/iodine/http.c:619
↓ 15 callers
Function
mustache__instruction_push
pushes an instruction to the instruction array */
ext/iodine/mustache_parser.h:717
↓ 14 callers
Function
fio_atol
* A helper function that converts between String data to a signed int64_t. * * Numbers are assumed to be in base 10. Octal (`0###`), Hex (`0x##`/`x#
ext/iodine/fio.c:4854
↓ 14 callers
Function
fio_poll_remove_fd
ext/iodine/fio.c:2034
↓ 14 callers
Function
fiobj_ary_new2
Creates a mutable empty Array object with the requested capacity. */
ext/iodine/fiobj_ary.c:102
↓ 14 callers
Function
fiobj_hash_key_in_loop
ext/iodine/fiobj_hash.c:131
↓ 13 callers
Function
fio_attach
* Attaches (or updates) a protocol object to a socket UUID. * Returns -1 on error and 0 on success. */
ext/iodine/fio.c:3994
↓ 13 callers
Function
fio_ltoa
* A helper function that writes a signed int64_t to a string. * * No overflow guard is provided, make sure there's at least 68 bytes * available (f
ext/iodine/fio.c:4933
↓ 13 callers
Function
fio_rand64
tested for randomness using code from: http://xoshiro.di.unimi.it/hwd.php */
ext/iodine/fio.c:8364
↓ 13 callers
Function
fio_sha2_init
Initialize/reset the SHA-2 object. SHA-2 is actually a family of functions with different variants. When initializing the SHA-2 container, you must s
ext/iodine/fio.c:9059
↓ 13 callers
Function
fio_sha2_result
Finalizes the SHA-2 hash, returning the Hashed data. `sha2_result` can be called for the same object multiple times, but the finalization will only b
ext/iodine/fio.c:9206
↓ 13 callers
Function
fio_sha2_write
Writes data to the SHA-2 buffer. */
ext/iodine/fio.c:9140
↓ 13 callers
Function
fiobj_iseq
* Deeply compare two objects. No hashing or recursive function calls are * involved. * * Uses a similar algorithm to `fiobj_each2`, except adjusted
ext/iodine/fiobject.h:606
↓ 13 callers
Function
iodine_connection_validate_data
ext/iodine/iodine_connection.c:148
↓ 12 callers
Function
fio_ls_embd_push
Adds a node to the list's head. */
ext/iodine/fio.h:3278
↓ 12 callers
Function
fio_peer_addr
public API. */
ext/iodine/fio.c:638
↓ 12 callers
Function
fio_stop
ext/iodine/fio.c:616
↓ 12 callers
Function
fio_timeout_set
Sets a timeout for a specific connection (only when running and valid). */
ext/iodine/fio.c:4005
↓ 12 callers
Function
fiobj_hash_count
Returns the number of elements in the Array. */
ext/iodine/fiobj_hash.c:149
↓ 12 callers
Function
http_finish
* Sends the response headers for a header only response. * * AFTER THIS FUNCTION IS CALLED, THE `http_s` OBJECT IS NO LONGER VALID. */
ext/iodine/http.c:651
↓ 11 callers
Function
fio_risky_hash
Computes a facil.io Risky Hash. */
ext/iodine/fio.h:2491
↓ 11 callers
Function
fio_str_capa
Returns the String's existing capacity (allocated memory). */
ext/iodine/fio.h:3937
↓ 11 callers
Method
on_close
(client)
examples/tcp_client.rb:44
↓ 10 callers
Function
fio_defer
Defer an execution of a function for later. */
ext/iodine/fio.c:1297
↓ 10 callers
Function
fio_msg_internal_free
frees the internal message data */
ext/iodine/fio.c:6147
↓ 10 callers
Function
fio_poll_add
ext/iodine/fio.c:2025
↓ 10 callers
Function
fiobj_str_write_i
* Writes a number at the end of the String using normal base 10 notation. * * Returns the new length of the String */
ext/iodine/fiobj_str.c:271
↓ 10 callers
Function
seek2ch
* This seems to be faster on some systems, especially for smaller distances. * * On newer systems, `memchr` should be faster. */
ext/iodine/http1_parser.h:195
↓ 9 callers
Function
fio_clear_fd
resets connection data, marking it as either open or closed. */
ext/iodine/fio.c:471
↓ 9 callers
Function
fio_cli_get_i
Returns the argument's value as an integer. */
ext/iodine/fio_cli.c:400
↓ 9 callers
Function
fio_msg_internal_create
ext/iodine/fio.c:6099
↓ 9 callers
Function
fio_msg_internal_dup
add reference count to fio_msg_internal_s */
ext/iodine/fio.c:6166
↓ 9 callers
Function
fio_run_every
* Creates a timer to run a task at the specified interval. * * The task will repeat `repetitions` times. If `repetitions` is set to 0, task * will
ext/iodine/fio.c:1565
↓ 9 callers
Function
fio_str_iseq
* Binary comparison returns `1` if both strings are equal and `0` if not. */
ext/iodine/fio.h:4594
↓ 9 callers
Function
fio_timer_calc_first_interval
Returns the number of miliseconds until the next event, up to FIO_POLL_TICK */
ext/iodine/fio.c:1459
↓ 9 callers
Function
fiobj_each1
* Single layer iteration using a callback for each nested fio object. * * Accepts any `FIOBJ ` type but only collections (Arrays and Hashes) are *
ext/iodine/fiobject.h:641
↓ 9 callers
Function
fiobj_json2obj
* Parses JSON, setting `pobj` to point to the new Object. * * Returns the number of bytes consumed. On Error, 0 is returned and no data is * consum
ext/iodine/fiobj_json.c:377
↓ 9 callers
Function
fiobj_send_free
send a FIOBJ object through a socket. */
ext/iodine/fiobj4fio.h:13
↓ 9 callers
Function
fiobj_str_capa_assert
Confirms the requested capacity is available and allocates as required. */
ext/iodine/fiobj_str.c:217
↓ 9 callers
Function
http_add2hash
* Adds a named parameter to the hash, resolving nesting references. * * i.e.: * * * "name[]" references a nested Array (nested in the Hash). * *
ext/iodine/http.c:1789
↓ 9 callers
Function
iodine_pubsub_CData
ext/iodine/iodine_pubsub.h:20
↓ 9 callers
Function
mustache_on_text
* Called when simple template text (string) is detected. * * A conforming implementation will output data as a string (no escaping). */
ext/iodine/fiobj_mustache.c:170
↓ 9 callers
Function
pread
ext/iodine/fio.c:228
↓ 9 callers
Function
realloc
ext/iodine/fio.c:8323
↓ 8 callers
Function
fio_is_valid
public API. */
ext/iodine/fio.c:609
↓ 8 callers
Function
fio_realloc
ext/iodine/fio.c:7653
↓ 8 callers
Function
fio_sha2_perform_all_rounds
Process the buffer once full. */
ext/iodine/fio.c:8865
↓ 8 callers
Function
fio_socket
PUBLIC API: opens a server or client socket */
ext/iodine/fio.c:3240
↓ 8 callers
Function
fiobj_hash_replace
* Replaces the value in a key-value pair, returning the old value (and it's * ownership) to the caller. * * A return value of NULL indicates that n
ext/iodine/fiobj_hash.c:265
↓ 8 callers
Function
fiobj_json_add2parser
ext/iodine/fiobj_json.c:49
↓ 8 callers
Function
iodine_json_add2parser
ext/iodine/iodine_json.c:39
↓ 8 callers
Function
kill
ext/iodine/fio.c:158
↓ 7 callers
Function
calloc
ext/iodine/fio.c:8321
↓ 7 callers
Function
fio_base64_encode
This will encode a byte array (data) of a specified length (len) and place the encoded data into the target byte buffer (target). The target buffer MU
ext/iodine/fio.c:9417
↓ 7 callers
Function
fio_is_running
public API. */
ext/iodine/fio.c:622
↓ 7 callers
Function
fio_local_addr
* Writes the local machine address (qualified host name) to the buffer. * * Returns the amount of data written (excluding the NUL byte). * * `limi
ext/iodine/fio.c:658
↓ 7 callers
Function
fio_ls_embd_is_empty
Tests if the list is empty. */
ext/iodine/fio.h:3305
next →
1–100 of 1,281, ranked by callers