Function

BitVecAll

BitVecAll Description Check if all bits in bitvector match the given value.

Read More

BitVecAny

BitVecAny Description Check if any bit in bitvector matches the given value.

Read More

BitVecClone

BitVecClone Description Create a deep copy of a bitvector. The returned bitvector must be deinitialized when no longer needed.

Read More

BitVecCountOnes

BitVecCountOnes Description Count number of bits set to 1 in bitvector.

Read More

BitVecCountZeros

BitVecCountZeros Description Count number of bits set to 0 in bitvector.

Read More

BitVecFind

BitVecFind Description Find index of first occurrence of a specific bit value.

Read More

BitVecFindLast

BitVecFindLast Description Find index of last occurrence of a specific bit value.

Read More

BitVecInsert

BitVecInsert Description Insert a bit at given index in bitvector. Shifts all bits at and after the index to the right.

Read More

BitVecInsertMultiple

BitVecInsertMultiple Description Insert all bits from another bitvector at a specific position. All existing bits at and after the position are shifted right.

Read More

BitVecInsertPattern

BitVecInsertPattern Description Insert a bit pattern from a byte at a specific position. Only the specified number of bits from the pattern are inserted.

Read More

BitVecInsertRange

BitVecInsertRange Description Insert multiple bits of the same value at a specific position. All existing bits at and after the position are shifted right.

Read More

BitVecLongestRun

BitVecLongestRun Description Find the longest consecutive sequence of a specific bit value.

Read More

BitVecNone

BitVecNone Description Check if no bits in bitvector match the given value.

Read More

BitVecPush

BitVecPush Description Push a bit to the end of bitvector. Grows the bitvector if necessary.

Read More

BitVecShrinkToFit

BitVecShrinkToFit Description Reduce bitvector capacity to match its current length. Frees any unused memory allocated beyond the current length.

Read More

BitVecSwap

BitVecSwap Description Efficiently swap the contents of two bitvectors. This is much faster than copying both bitvectors.

Read More

deadend_test_driver

deadend_test_driver Description Run an array of deadend test functions (all expecting failure).

Read More

run_test_suite

run_test_suite Description Main test driver that handles both normal and deadend tests.

Read More

simple_test_driver

simple_test_driver Description Run an array of simple test functions.

Read More

test_deadend

test_deadend Description Run a specific test function using setjmp/longjmp to capture aborts. This is used for deadend tests that are expected to call LOG_FATAL.

Read More

ValidateBitVec

ValidateBitVec Description Validate whether a given BitVec object is valid. Not foolproof but will work most of the time. Aborts if provided BitVec is not valid.

Read More

BitVecAlignmentScore

BitVecAlignmentScore Description Calculate alignment score between two bitvectors. Used in bioinformatics-style sequence alignment with match/mismatch scoring.

Read More

BitVecAnd

BitVecAnd Description Perform bitwise AND operation between two bitvectors. Result is stored in the first bitvector.

Read More

BitVecBestAlignment

BitVecBestAlignment Description Find best overlapping alignment between two bitvectors. Returns the offset that gives the best alignment score.

Read More

BitVecClear

BitVecClear Description Clear all bits in bitvector without deallocating memory. Sets length to 0 but keeps allocated capacity.

Read More

BitVecCompare

BitVecCompare Description Compare two bitvectors lexicographically. Comparison is done bit by bit from left to right.

Read More

BitVecCompareRange

BitVecCompareRange Description Compare ranges of two bitvectors lexicographically.

Read More

BitVecContainsAt

BitVecContainsAt Description Check if bitvector contains the given pattern at a specific position.

Read More

BitVecCorrelation

BitVecCorrelation Description Calculate Pearson correlation coefficient between two bitvectors. Treats bits as 0/1 values and computes linear correlation.

Read More

BitVecCosineSimilarity

BitVecCosineSimilarity Description Calculate cosine similarity between two bitvectors. Treats bitvectors as binary vectors and computes cosine of angle between them.

Read More

BitVecCountPattern

BitVecCountPattern Description Count total occurrences of a bit pattern in the bitvector.

Read More

BitVecDeinit

BitVecDeinit Description Deinitialize bitvector and free all allocated memory. After calling this, the bitvector should not be used unless re-initialized.

Read More

BitVecDisjoint

BitVecDisjoint Description Check if two bitvectors are disjoint (have no common 1-bits).

Read More

BitVecDotProduct

BitVecDotProduct Description Calculate dot product of two bitvectors. Dot product is the count of positions where both bits are 1.

Read More

BitVecEditDistance

BitVecEditDistance Description Calculate edit distance between two bitvectors. Edit distance is minimum number of single-bit operations to transform one into the other.

Read More

BitVecEndsWith

BitVecEndsWith Description Check if bitvector ends with the given bit pattern.

Read More

BitVecEntropy

BitVecEntropy Description Calculate information entropy of a bitvector. Entropy measures the randomness/information content of the bit pattern.

Read More

BitVecEquals

BitVecEquals Description Test equality between two bitvectors. Two bitvectors are equal if they have the same length and all bits match.

Read More

BitVecEqualsRange

BitVecEqualsRange Description Compare specific ranges of two bitvectors for equality.

Read More

BitVecFindAllPattern

BitVecFindAllPattern Description Find all occurrences of a bit pattern in the bitvector. Results array must be pre-allocated with sufficient space.

Read More

BitVecFindLastPattern

BitVecFindLastPattern Description Find last occurrence of a bit pattern in the bitvector.

Read More

BitVecFindPattern

BitVecFindPattern Description Find first occurrence of a bit pattern in the bitvector.

Read More

BitVecFlip

BitVecFlip Description Flip the value of bit at given index in bitvector. Changes 0 to 1 and 1 to 0.

Read More

BitVecFromBytes

BitVecFromBytes Description Create bitvector from byte array. Reads the specified number of bits from the byte array.

Read More

BitVecFromInteger

BitVecFromInteger Description Create bitvector from integer value. Creates a bitvector representing the specified number of bits from the integer.

Read More

BitVecFromStr

BitVecFromStr Description Create bitvector from string representation. String should contain only ‘1’ and ‘0’ characters.

Read More

BitVecFuzzyMatch

BitVecFuzzyMatch Description Fuzzy pattern matching allowing up to N mismatches. Useful for approximate pattern matching with error tolerance.

Read More

BitVecGet

BitVecGet Description Get the value of bit at given index in bitvector.

Read More

BitVecHammingDistance

BitVecHammingDistance Description Calculate Hamming distance between two bitvectors. Hamming distance is the number of positions where bits differ.

Read More

BitVecIsSorted

BitVecIsSorted Description Check if bits in bitvector are in sorted order. Useful for certain algorithms and data structures.

Read More

BitVecIsSubset

BitVecIsSubset Description Check if first bitvector is a subset of the second. A bitvector is a subset if all its 1-bits are also 1-bits in the other.

Read More

BitVecIsSuperset

BitVecIsSuperset Description Check if first bitvector is a superset of the second. A bitvector is a superset if it contains all 1-bits from the other.

Read More

BitVecJaccardSimilarity

BitVecJaccardSimilarity Description Calculate Jaccard similarity between two bitvectors. Jaccard similarity = |intersection| / |union|

Read More

BitVecMatches

BitVecMatches Description Match bitvector against pattern with wildcards. Wildcards allow flexible pattern matching where some positions can be “any bit”.

Read More

BitVecNot

BitVecNot Description Perform bitwise NOT operation on a bitvector. Result is stored in the first bitvector.

Read More

BitVecNumericalCompare

BitVecNumericalCompare Description Compare two bitvectors as unsigned integers. Treats bitvectors as unsigned binary numbers (LSB first).

Read More

BitVecOr

BitVecOr Description Perform bitwise OR operation between two bitvectors. Result is stored in the first bitvector.

Read More

BitVecOverlaps

BitVecOverlaps Description Check if two bitvectors overlap (have any common 1-bits).

Read More

BitVecPop

BitVecPop Description Pop the last bit from bitvector. Returns the value of the removed bit.

Read More

BitVecPrefixMatch

BitVecPrefixMatch Description Match bitvector against an array of prefix patterns. Returns the index of the first matching prefix.

Read More

BitVecRegexMatch

BitVecRegexMatch Description Simple regex-style pattern matching for bitvectors. Supports basic patterns: ‘*’ (any sequence), ‘?’ (0 or 1), ‘[01]’ (literal).

Read More

BitVecRemove

BitVecRemove Description Remove a bit at given index from bitvector. Shifts all bits after the index to the left.

Read More

BitVecRemoveAll

BitVecRemoveAll Description Remove all occurrences of a specific bit value. Returns the number of bits that were removed.

Read More

BitVecRemoveFirst

BitVecRemoveFirst Description Remove the first occurrence of a specific bit value. Returns true if a bit was found and removed, false otherwise.

Read More

BitVecRemoveLast

BitVecRemoveLast Description Remove the last occurrence of a specific bit value. Returns true if a bit was found and removed, false otherwise.

Read More

BitVecRemoveRange

BitVecRemoveRange Description Remove multiple consecutive bits starting at a specific position. All bits after the removed range are shifted left.

Read More

BitVecReplace

BitVecReplace Description Replace first occurrence of old pattern with new pattern.

Read More

BitVecReplaceAll

BitVecReplaceAll Description Replace all occurrences of old pattern with new pattern.

Read More

BitVecReserve

BitVecReserve Description Reserve space for at least n bits in bitvector. Does not change the length, only ensures capacity.

Read More

BitVecResize

BitVecResize Description Reu64 bitvector to hold exactly n bits. May grow or shrink the bitvector.

Read More

BitVecReverse

BitVecReverse Description Reverse the order of all bits in bitvector. First bit becomes last, last becomes first, etc.

Read More

BitVecRFindPattern

BitVecRFindPattern Description Search for a pattern starting from a specific position (reverse search).

Read More

BitVecRotateLeft

BitVecRotateLeft Description Rotate all bits in bitvector to the left by specified positions. Bits that fall off the left end wrap around to the right.

Read More

BitVecRotateRight

BitVecRotateRight Description Rotate all bits in bitvector to the right by specified positions. Bits that fall off the right end wrap around to the left.

Read More

BitVecRunLengths

BitVecRunLengths Description Analyze run lengths in a bitvector. A run is a sequence of consecutive identical bits. Results array must be pre-allocated with sufficient space.

Read More

BitVecSet

BitVecSet Description Set the value of bit at given index in bitvector.

Read More

BitVecShiftLeft

BitVecShiftLeft Description Shift all bits in bitvector to the left by specified positions. New bits on the right are filled with zeros.

Read More

BitVecShiftRight

BitVecShiftRight Description Shift all bits in bitvector to the right by specified positions. New bits on the left are filled with zeros.

Read More

BitVecSignedCompare

BitVecSignedCompare Description Compare two bitvectors as signed integers (MSB is sign bit).

Read More

BitVecStartsWith

BitVecStartsWith Description Check if bitvector starts with the given bit pattern.

Read More

BitVecSuffixMatch

BitVecSuffixMatch Description Match bitvector against an array of suffix patterns. Returns the index of the first matching suffix.

Read More

BitVecToBytes

BitVecToBytes Description Export bitvector to byte array. Copies the internal bit representation to the provided byte array.

Read More

BitVecToInteger

BitVecToInteger Description Convert bitvector to integer (up to 64 bits). Treats the bitvector as an unsigned integer with LSB first.

Read More

BitVecToStr

BitVecToStr Description Convert bitvector to string representation. Each bit becomes ‘1’ or ‘0’ character. Caller must free the returned string.

Read More

BitVecWeightCompare

BitVecWeightCompare Description Compare two bitvectors by their Hamming weights (number of 1s).

Read More

BitVecXor

BitVecXor Description Perform bitwise XOR operation between two bitvectors. Result is stored in the first bitvector.

Read More

FReadFmtInternal

FReadFmtInternal Description Read formatted data from file streams (stdin, or other file)

Read More

JReadBool

JReadBool Description Read a boolean value (“true” or “false”) from input string.

Read More

JReadFloat

JReadFloat Description Read a floating-point number from input string.

Read More

JReadInteger

JReadInteger Description Strictly read an integer from input string.

Read More

JReadNull

JReadNull Description Read a “null” value from input string.

Read More

JReadNumber

JReadNumber Description Read a JSON number (int or float) from input string.

Read More

JReadString

JReadString Description Read a quoted string, handling escape sequences.

Read More

JSkipValue

JSkipValue Description Skip the current JSON value at reading position.

Read More

JSkipWhitespace

JSkipWhitespace Description Skip whitespace from current reading position.

Read More

LogDeinit

LogDeinit Description Shut down logging subsystem and release resources

Read More

LogInit

LogInit Description Initialize logging subsystem

Read More

LogWrite

LogWrite Description Core log message generation function

Read More

MemCompare

MemCompare Description Compare memory regions.

Read More

ReadCompleteFile

ReadCompleteFile Description Read complete contents of file at once. Pointer returned is malloc’d and hence must be freed after use. The returned pointer can also be reused by providing pointer to it in data parameter. realloc is called on *data in order to expand it’s size. If *capacity exceeds the size of file to be loaded, then no reallocation is performed. This means the provided buffer will automatically be expanded if required. The returned buffer is null-terminated just-in-case. The implementation and API is designed in such a way that it can be used with containers like Vec and Str.

Read More

StrDeinit

StrDeinit Description Deinit str by freeing all allocations. str : Pointer to string to be deinited

Read More

StrEndsWith

StrEndsWith Description Check if string ends with another Str object.

Read More

StrEndsWithCstr

StrEndsWithCstr Description Check if string ends with a fixed-length C-style string (Cstr).

Read More

StrEndsWithZstr

StrEndsWithZstr Description Check if string ends with a null-terminated string (Zstr).

Read More

StrInitCopy

StrInitCopy Description Copy data from src to dst

Read More

strip_str

strip_str Description Internal implementation for strip functions. Used by StrStrip, StrLStrip, and StrRStrip macros.

Read More

StrReplace

StrReplace Description Replace occurrences of a Str in string with another Str.

Read More

StrReplaceCstr

StrReplaceCstr Description Replace occurrences of a fixed-length string (Cstr) in string.

Read More

StrReplaceZstr

StrReplaceZstr Description Replace occurrences of a null-terminated string (Zstr) in string.

Read More

StrSplit

StrSplit Description Split the given Str object into multiple Str objects stored in a vector of Str objects. Each Str object in returned vector is a new Str object and hence must be deinited after use. Calling VecDeinit() on the returned vector will do that for you automatically for all the objects. This is best used when iterating over a delimited data is not the only goal, but also other modifications like stripping over whitespaces from returned Str objects.

Read More

StrSplitToIters

StrSplitToIters Description Split given string into multiple StrIter into the same string. This way the split operation can be performed without creating new strings, but instead just having an iterated view into the Str object. This is best used when user never needs to make modifications and save the modifications. In other words, best used when only need iteration over string with some delimiters.

Read More

StrStartsWith

StrStartsWith Description Check if string starts with another Str object.

Read More

StrStartsWithCstr

StrStartsWithCstr Description Check if string starts with a fixed-length C-style string (Cstr).

Read More

StrStartsWithZstr

StrStartsWithZstr Description Check if string starts with a null-terminated string (Zstr).

Read More

StrToF64

StrToF64 Description Convert string to double

Read More

StrToI64

StrToI64 Description Convert string to signed 64-bit integer

Read More

StrToU64

StrToU64 Description Convert string to unsigned 64-bit integer

Read More

StrWriteFmtInternal

StrWriteFmtInternal Description Print out a formatted string with rust-style placeholders to given string o.

Read More

SysAbort

SysAbort Description Custom abort function that can be redirected for testing purposes. By default, this calls the standard abort() function. If a callback is set via SysSetAbortCallback, it calls the callback instead.

Read More

SysDestroyProcess

SysDestroyProcess Description Clean up process information and free resources. Process must be completed or terminated before calling this.

Read More

SysGetCurrentProcessId

SysGetCurrentProcessId Description Platform independent method to get current process Id.

Read More

SysGetDirContents

SysGetDirContents Description Read directory contents into a vector. Current contents of the vector will be cleared out.

Read More

SysGetFileSize

SysGetFileSize Description Get size of file without opening it.

Read More

SysGetProcessExitCode

SysGetProcessExitCode Description Get the exit code of a completed process.

Read More

SysMutexDestroy

SysMutexDestroy Description Destroy the provided mutex object. Once a mutex is destroyed, all resources held by it will be freed. Using it after this cal is UB.

Read More

SysSetAbortCallback

SysSetAbortCallback Description Set a custom callback function for SysAbort. If no callback is set, SysAbort will call the standard abort() function.

Read More

SysTerminateProcess

SysTerminateProcess Description Terminate a running process forcefully.

Read More

SysWaitForProcess

SysWaitForProcess Description Wait for a process to complete with optional timeout.

Read More

ValidateStr

ValidateStr Description Validate whether a given Str object is valid. Not foolproof but will work most of the time. Aborts if provided Str is not valid.

Read More

ValidateStrs

ValidateStrs Description Validate whether a given Strs object is valid. Not foolproof but will work most of the time. Aborts if provided Strs is not valid.

Read More

ZstrCompare

ZstrCompare Description Compare two strings lexicographically.

Read More

ZstrCompareN

ZstrCompareN Description Compare two strings lexicographically up to n characters.

Read More

ZstrLen

ZstrLen Description Get length of a null-terminated string.

Read More