Code
Hub
Workspaces
Following
Trending
Connect
MCP
copy
Create free account
hub
/
github.com/KaisenAmin/c_std
/ functions
Functions
2,651 in github.com/KaisenAmin/c_std
⨍
Functions
2,651
◇
Types & classes
138
↓ 7 callers
Function
is_persian_leap_year
date/date.c:756
↓ 7 callers
Function
json_add_to_object
* @brief Adds a key-value pair to a JSON object. * * @param object The JSON object to which the key-value pair will be added. Must be of type JSON_
json/json.c:2851
↓ 7 callers
Function
json_parse
* @brief Parses a JSON string and returns the corresponding JSON element tree. * * @param json_str The JSON string to be parsed. * @return A point
json/json.c:1294
↓ 7 callers
Function
jwt_obj_set_number
jwt/jwt.c:1226
↓ 7 callers
Function
mutex_init
* Initializes a mutex. * * This function initializes a mutex with the specified type. The mutex can be * either a plain mutex, a timed mutex, or a
concurrent/concurrent.c:37
↓ 7 callers
Function
p_strdup
Portable string duplication so we don't drag in strdup. */
plot/plot.c:28
↓ 7 callers
Function
set_contains
* @brief Tests membership of an element. * @param set The set to search. NULL yields false. * @param element The element to look for. NULL yield
set/set.c:800
↓ 7 callers
Function
string_append
* @brief Appends a C-string to the end of the String object. * * This function appends the contents of `strItem` to the end of the String object. *
string/std_string.c:937
↓ 7 callers
Function
tokenize
* Parses the input expression string into an array of tokens. * * @param expr The expression string. * @param tokens The output array of tokens. *
evalexpr/evalexpr.c:47
↓ 7 callers
Function
xml__doc_register
Register `node` with `doc` so xml_deallocate_document frees it later. * Sets node->owner = doc. Returns the node (or node unchanged if doc is * NULL
xml/xml.c:1210
↓ 6 callers
Function
bigint_deallocate
* @brief Deallocates a BigInt. * * Frees all memory associated with the BigInt, including the internal GMP value. * * @param bi Pointer to the Big
bigint/bigint.c:115
↓ 6 callers
Function
color_to_rgba
Helper: copy a Color into 4 optional out-pointers. */
turtle/turtle.c:1239
↓ 6 callers
Function
config_set_value
* @brief Sets the value for a given key in a specified section. * * This function sets the value for the specified key in the given section. If the
config/config.c:323
↓ 6 callers
Function
csvp_row_append_cell_n
csv/csv.c:69
↓ 6 callers
Function
days_in_month
date/date.c:809
↓ 6 callers
Function
deque_at
deque/deque.h:91
↓ 6 callers
Function
find_string
date/date.c:730
↓ 6 callers
Function
http_add_header
* @brief Append a `Name: Value` header to the response. * * No deduplication — calling twice with the same name yields two header * entries. Once `
network/http.c:779
↓ 6 callers
Function
json_deep_copy
* @brief Creates a deep copy of a JSON element. * * @param element The JSON element to be copied. * @return A new JSON element that is a deep copy
json/json.c:1564
↓ 6 callers
Function
jwt_alg_is_hmac
* @brief Whether the algorithm uses an HMAC (symmetric) key. * @return true for HS256/HS384/HS512, false otherwise. */
jwt/jwt.c:354
↓ 6 callers
Function
jwt_obj_set_string
Internal helper: set a string-valued claim on a target object. Removes any existing claim with the same name first so repeated calls don't accum
jwt/jwt.c:1213
↓ 6 callers
Function
map_size
* @brief Returns the number of elements in the map. * * This function returns the number of key-value pairs currently stored in the map. * If the m
map/map.c:688
↓ 6 callers
Function
plot_add_series
* @brief Append a new series of any drawing style to the plot. * * Allocates internal buffers and deep-copies @p xData (if non-NULL), * @p yData, a
plot/plot.c:428
↓ 6 callers
Function
regex_compile
* @brief Compiles the given regular expression pattern into a Regex object. * * @param pattern The regex pattern to compile. * @param flags Option
regex/std_regex.c:99
↓ 6 callers
Function
regex_match
* @brief Matches a string against a compiled regular expression. * * @param regex The compiled regex object. * @param string The string to match.
regex/std_regex.c:178
↓ 6 callers
Function
shunting_yard
* Converts an array of tokens in infix notation into RPN (Reverse Polish Notation) * using the shunting-yard algorithm. * * @param tokens Array of
evalexpr/evalexpr.c:249
↓ 6 callers
Function
sort_insertion
* @brief In-place insertion sort. * * Builds the sorted portion of the array one element at a time by sliding * each new element into its correct p
sort/sort.c:346
↓ 6 callers
Function
string_at
* @brief Retrieves the character at the specified index in the String object. * * This function returns the character at the given index in the Stri
string/std_string.c:1333
↓ 6 callers
Function
string_compare
* @brief Compares two String objects lexicographically. * * This function compares two String objects lexicographically. * If either string is NUL
string/std_string.c:592
↓ 6 callers
Function
string_deallocate
* @brief Deallocates a String object and its associated resources. * * This function deallocates the memory used by the String object and its associ
string/std_string.c:1297
↓ 6 callers
Function
tcp_cleanup
* @brief Cleans up the network API (Windows only). * * This function cleans up the Winsock library on Windows systems. On Unix-like systems, * no
network/tcp.c:415
↓ 6 callers
Function
trim_whitespace
config/config.c:15
↓ 6 callers
Function
udp_resolve_sockaddr
Internal: resolve hostname to sockaddr_storage (for sendto, bind, etc)
network/udp.c:98
↓ 6 callers
Function
vecbuf_store
vector/vector.h:75
↓ 6 callers
Function
vector_capacity
* @brief Retrieves the current capacity of the vector. * * This function returns the current capacity of the vector, which is the number of element
vector/vector.c:1322
↓ 5 callers
Function
bigint_copy
* @brief Creates a copy of an existing BigInt. * * Allocates a new BigInt and copies the value from the source BigInt. * * @param src Pointer to t
bigint/bigint.c:84
↓ 5 callers
Function
config_get_value
* @brief Retrieves the value for a given key in a specified section. * * This function searches the specified section in the configuration file for
config/config.c:277
↓ 5 callers
Function
csv_row_append_cell
* @brief Appends a cell to a CsvRow. * * This function adds a new cell with the specified value to the end of the CsvRow. * If necessary, it resize
csv/csv.c:104
↓ 5 callers
Function
date_is_valid_ymd
date/date.c:789
↓ 5 callers
Function
dq_store
deque/deque.c:35
↓ 5 callers
Function
ezxml_ampencode
Encodes ampersand sequences appending the results to *dst, reallocating *dst if length excedes max. a is non-zero for attribute encoding. Returns *dst
xml/xml.c:786
↓ 5 callers
Function
ezxml_attr
returns the value of the requested tag attribute or NULL if not found
xml/xml.c:180
↓ 5 callers
Function
flist_make_node
Allocate a detached node holding `itemSize` bytes inline. If `value` is * non-NULL the bytes are copied from it; if NULL they are zero-filled (used
forward_list/forward_list.c:122
↓ 5 callers
Function
httpbuf_append
network/http.c:187
↓ 5 callers
Function
json_append
* @brief Exports a CSV file to a JSON format string. * * This function converts the data from a CsvFile into a JSON formatted string. * Each row in
csv/csv.c:863
↓ 5 callers
Function
json_remove_element
* @brief Removes an element from a JSON object or array by key or index. * * @param element The JSON object or array from which to remove an elemen
json/json.c:1920
↓ 5 callers
Function
json_serialize
* @brief Serializes a JSON element into a JSON-formatted string. * * @param element The JSON element to serialize. * @return A dynamically allocat
json/json.c:1732
↓ 5 callers
Function
jsonsb_ensure
Ensure room for `extra` more bytes plus a NUL terminator. */
json/json.c:26
↓ 5 callers
Function
jwks_decode_b64u_field
Decode a base64url-encoded BIGNUM-style integer (modulus, exponent, EC coordinate). Returns a malloc'd byte buffer; caller frees. */
jwt/jwt.c:766
↓ 5 callers
Function
jwt_alg_is_ec
* @brief Whether the algorithm uses an ECDSA (elliptic-curve) key. * @return true for ES256/ES384/ES512, false otherwise. */
jwt/jwt.c:399
↓ 5 callers
Function
jwt_alg_is_rsa_pss
* @brief Whether the algorithm is RSASSA-PSS (PS256/384/512, RFC 7518 §3.5). * * PS* uses the same RSA key as RS* (same EVP_PKEY type) but applies P
jwt/jwt.c:379
↓ 5 callers
Function
jwt_obj_get_string
Helper: fetch a string-valued payload claim. */
jwt/jwt.c:2405
↓ 5 callers
Function
jwt_slurp_file
Helper: load a whole file into memory. Caller frees *out. */
jwt/jwt.c:560
↓ 5 callers
Function
mat_pct_sorted
Linear-interpolated percentile of an already-sorted array (NumPy method). */
matrix/matrix.c:8557
↓ 5 callers
Function
matrix_copy
* @brief Creates a deep copy of the given matrix. * * This function allocates a new matrix and copies all the data from the input matrix to the new
matrix/matrix.c:5342
↓ 5 callers
Function
md5_update
uuid/uuid.c:105
↓ 5 callers
Function
memory_pool_create
string/std_string.c:216
↓ 5 callers
Function
rbmap_left_rotate
* @brief Performs a left rotation on the given node in the map. * * This function rotates the subtree rooted at node `x` to the left, ensuring * th
map/map.c:225
↓ 5 callers
Function
rbmap_right_rotate
* @brief Performs a right rotation on the given node in the map. * * This function rotates the subtree rooted at node `y` to the right, ensuring *
map/map.c:276
↓ 5 callers
Function
rbset_left_rotate
@brief Left rotation about `x`, keeping parent links consistent. */
set/set.c:223
↓ 5 callers
Function
rbset_lex_compare
* @brief Internal: three-way lexicographic comparison of the sorted sequences. * @return -1 if `a` < `b`, 1 if `a` > `b`, 0 if equal. Uses `a`'s comp
set/set.c:1258
↓ 5 callers
Function
rbset_right_rotate
@brief Right rotation about `y`, keeping parent links consistent. */
set/set.c:254
↓ 5 callers
Function
resize_fill_points_if_needed
* @brief Resizes the fill points buffer if needed. * * This function checks if the current number of fill points exceeds the allocated capacity. If
turtle/turtle.c:316
↓ 5 callers
Function
set_insert
* @brief Inserts a copy of `element` if an equal element is not already present. * * Mirrors `std::set::insert`: a set holds at most one element per
set/set.c:685
↓ 5 callers
Function
sha1_update
uuid/uuid.c:222
↓ 5 callers
Function
sort_heapify
* @brief Restore the max-heap property at a single node by sifting down. * * Assumes the binary trees rooted at `index`'s two children already satis
sort/sort.c:1325
↓ 5 callers
Function
sstr_grow_keep_old
------------------------------------------------------------------ */ Growth helper */ ----------
string/std_string.c:318
↓ 5 callers
Function
string_empty
* @brief Checks if the given String object is empty. * * This function checks whether the String object is empty, meaning it contains no characters
string/std_string.c:533
↓ 5 callers
Function
string_length
* @brief Retrieves the length of the String object. * * This function returns the current length (size) of the String object. If the String object i
string/std_string.c:1397
↓ 5 callers
Function
sysconf
xml/xml.c:67
↓ 5 callers
Function
time_create
* @brief This function initializes a Time object with the given parameters. If the provided time parameters * are invalid, it will log an error (if
time/std_time.c:38
↓ 5 callers
Function
tuple_size
* @brief This function returns the number of elements stored in the given tuple. * * @param tuple Pointer to the Tuple object. * @return The numbe
tuple/tuple.c:346
↓ 5 callers
Function
vector_clear
* @brief Remove all elements; capacity is preserved. * * Matches std::vector::clear() — size is set to 0, capacity is left * intact. Reuses the exi
vector/vector.c:1164
↓ 4 callers
Function
append_indent
* @brief Appends a specified amount of indentation (spaces) to the JSON string. * * This function adds spaces to the `String` structure to create i
json/json.c:1059
↓ 4 callers
Function
bigfloat_is_zero
* @brief Checks if a BigFloat is zero. * @param a Pointer to the BigFloat. * @return `true` if the BigFloat is exactly 0, `false` otherwise. */
bigfloat/bigfloat.c:374
↓ 4 callers
Function
binomial_factorial
Function to calculate binomial coefficient
matrix/matrix.c:101
↓ 4 callers
Function
cfg_section_add_entry
Append `entry` to a section's entry array, growing it GEOMETRICALLY (the old * realloc-to-(entry_count + 1) made loading a section with many keys O(n
config/config.c:70
↓ 4 callers
Function
ckd_feed
Returns false (and leaves phase == CKD_ERROR) on protocol error / overflow / * exceeding `max`. Completion is signalled by st->phase == CKD_DONE. */
network/http.c:229
↓ 4 callers
Function
cl_close
Close a client socket, tearing down TLS first when present. tcp_ssl_close * already closes the fd, so we must not also call tcp_close on an SSL socke
network/http.c:2753
↓ 4 callers
Function
cl_recv
One recv, gated by a per-read idle timeout (select), SSL-aware. Returns * TCP_ERR_WOULD_BLOCK on idle timeout. */
network/http.c:2763
↓ 4 callers
Function
condition_init
* Initializes a condition variable. * * Prepares a condition variable for use. On Windows, this involves initializing * a critical section for mana
concurrent/concurrent.c:440
↓ 4 callers
Function
condition_signal
* Signals a condition variable. * * Unblocks at least one of the threads that are blocked on the specified * condition variable. If no threads are
concurrent/concurrent.c:537
↓ 4 callers
Function
condition_wait
* Waits for a condition variable to be signaled. * * Blocks the calling thread until the specified condition variable is signaled. * The function a
concurrent/concurrent.c:736
↓ 4 callers
Function
crypto_evp_md
Translate our HashAlgorithm enum into the matching `EVP_MD*` so the helpers below don't each carry their own switch. Returns NULL on unsupported
crypto/crypto.c:579
↓ 4 callers
Function
csv_file_destroy
* @brief Destroys a CsvFile structure and frees its memory. * * This function frees all the memory associated with the rows of the CsvFile, * as we
csv/csv.c:177
↓ 4 callers
Function
csv_row_destroy
* @brief Destroys a CsvRow structure and frees its memory. * * This function frees all the memory associated with the cells of the CsvRow, * as wel
csv/csv.c:47
↓ 4 callers
Function
dq_lex_compare
* @brief Single-pass lexicographic comparison of two deques' element sequences. * * Returns a negative value if deque1 < deque2, zero if they are eq
deque/deque.c:801
↓ 4 callers
Function
dq_slot
------------------------------------------------------------------ */ Inline-storage helpers */ ----------
deque/deque.c:31
↓ 4 callers
Function
ezxml_decode
Recursively decodes entity and character references and normalizes new lines ent is a null terminated array of alternating entity names and values. se
xml/xml.c:243
↓ 4 callers
Function
ezxml_free_attr
frees a tag attribute list
xml/xml.c:547
↓ 4 callers
Function
ezxml_parse_str
parse the given xml string and return an ezxml structure
xml/xml.c:573
↓ 4 callers
Function
file_reader_read
* @brief Reads data from the file into a buffer. * * This function reads data from the file associated with the `FileReader` into a specified buffer
file_io/file_reader.c:343
↓ 4 callers
Function
file_reader_read_line
* @brief Reads a line of text from the file. * * This function reads a single line of text from the file associated with the `FileReader`. * * @pa
file_io/file_reader.c:474
↓ 4 callers
Function
get_ssl_mapping
Find or allocate a mapping entry for a given socket
network/tcp.c:67
↓ 4 callers
Function
hashmap_begin
* @brief Iterator pointing at the first entry in the map. * * Walk via `hashmap_iterator_increment` until the iterator equals * `hashmap_end`. Iter
hashmap/hashmap.c:623
↓ 4 callers
Function
hmap_find_node_in_bucket
Find a node matching `key` in the chain whose head is `head` (NULL = empty).
hashmap/hashmap.c:191
↓ 4 callers
Function
http_request
* @brief Perform one HTTP/HTTPS request, following redirects. See the header * contract. Returns the final HttpResponse (free with * h
network/http.c:3199
↓ 4 callers
Function
http_set_status
* @brief Set the response status code and (strdup'd) reason phrase. * * Frees any previous status message before overwriting — repeated calls * do
network/http.c:693
↓ 4 callers
Function
json_array_size
* @brief Returns the size of a JSON array. * * @param array The JSON element representing an array. * @return The number of elements in the array,
json/json.c:1515
↓ 4 callers
Function
jsonp_resolve
Resolve the value to read: the element itself when @p key_or_index is NULL, * otherwise the child at that object key / array index. Returns NULL if t
json/json.c:3078
← previous
next →
101–200 of 2,651, ranked by callers