| src | |
| extensions | |
| curl.c | Libcurl helpers and buffers used by HTTP-related VM opcodes |
| ini.c | INI parsing helpers and VM opcode support via iniparser |
| json.c | JSON extension helpers and VM opcode cases (conditional build) |
| openssl.c | OpenSSL-based hashing helpers used by crypto-related opcodes |
| pcre2.c | PCRE2 configuration header and includes for regex-related opcodes |
| pcsc.c | PC/SC smartcard helper registries and lookup utilities |
| sqlite.c | SQLite handle registry and helper utilities for the Fun VM extension |
| xml2.c | Lightweight libxml2 handle registry for Fun VM extension helpers |
| rust | |
| target | |
| debug | |
| deps | |
| hello_c_world-59126b87de693b23.d | |
| hello_c_world-8cd0f8010404e25e.d | |
| release | |
| deps | |
| hello_c_world-cfaa999f5d83d81b.d | |
| libhello_c_world.d | |
| eh_personality.c | |
| vm | |
| arithmetic | |
| add.c | Execute a bytecode program starting from the given entry point |
| div.c | Implements the OP_DIV opcode (numeric division) in the VM |
| mul.c | Implements the OP_MUL opcode (numeric multiplication) in the VM |
| sub.c | Implements the OP_SUB opcode (numeric subtraction) in the VM |
| arrays | |
| apop.c | Implements the OP_APOP opcode for removing elements from arrays in the VM |
| clear.c | Implements the OP_CLEAR opcode for clearing arrays in the VM |
| contains.c | Implements the OP_CONTAINS opcode for checking array membership in the VM |
| enumerate.c | Implements the OP_ENUMERATE opcode for enumerating arrays in the VM |
| index_get.c | Implements the OP_INDEX_GET opcode for array and map indexing in the VM |
| index_of.c | Implements the OP_INDEX_OF opcode for finding the index of a value in an array in the VM |
| index_set.c | Implements the OP_INDEX_SET opcode for array and map assignment in the VM |
| insert.c | Implements the OP_INSERT opcode for inserting elements into arrays in the VM |
| join.c | Implements the OP_JOIN opcode for joining array elements into a string in the VM |
| make_array.c | Implements the OP_MAKE_ARRAY opcode for creating arrays in the VM |
| push.c | Implements the OP_PUSH opcode for appending elements to arrays in the VM |
| remove.c | Implements the OP_REMOVE opcode for removing elements from arrays in the VM |
| set.c | Implements the OP_SET opcode for setting elements in arrays in the VM |
| slice.c | Implements the OP_SLICE opcode for array slicing in the VM |
| zip.c | Implements the OP_ZIP opcode for array zipping in the VM |
| bitwise | |
| band.c | Implements the OP_BAND opcode bitwise AND (uint32) |
| bnot.c | Implements the OP_BNOT opcode bitwise NOT (uint32) |
| bor.c | Implements the OP_BOR opcode bitwise OR (uint32) |
| bxor.c | Implements the OP_BXOR opcode bitwise XOR (uint32) |
| rol.c | Implements the OP_ROTL opcode rotate-left (uint32) |
| ror.c | Implements the OP_ROTR opcode rotate-right (uint32) |
| shl.c | Implements the OP_SHL opcode logical left shift (uint32) |
| shr.c | Implements the OP_SHR opcode logical right shift (uint32) |
| core | |
| call.c | Implements the OP_CALL opcode for function calls in the VM |
| dup.c | Implements the OP_DUP opcode for duplicating the top stack value in the VM |
| exit.c | Implements the OP_EXIT opcode to terminate the script with an exit code |
| halt.c | Implements the OP_HALT opcode for stopping VM execution |
| jump.c | Implements the OP_JUMP opcode for unconditional jumps in the VM |
| jump_if_false.c | Implements the OP_JUMP_IF_FALSE opcode for conditional jumps in the VM |
| load_const.c | Implements the OP_LOAD_CONST opcode for loading constants in the VM |
| load_global.c | Implements the OP_LOAD_GLOBAL opcode for loading global variables in the VM |
| load_local.c | Implements the OP_LOAD_LOCAL opcode for loading local variables in the VM |
| nop.c | Implements the OP_NOP opcode for no operation in the VM |
| pop.c | Implements the OP_POP opcode for removing the top stack value in the VM |
| return.c | Implements the OP_RETURN opcode for returning from a function in the VM |
| store_global.c | Implements the OP_STORE_GLOBAL opcode for storing global variables in the VM |
| store_local.c | Implements the OP_STORE_LOCAL opcode for storing local variables in the VM |
| swap.c | Implements the OP_SWAP opcode for stack manipulation in the VM |
| throw.c | Implements the OP_THROW opcode for raising exceptions in the VM |
| try_pop.c | Implements the OP_TRY_POP opcode to end a try/catch region |
| try_push.c | Implements the OP_TRY_PUSH opcode to begin a try/catch region |
| cpp | |
| add.cpp | Fun VM C++ opcode snippet: add two 64-bit integers (cpp_add) |
| curl | |
| download.c | Fun VM opcode snippet: HTTP download to file via libcurl (OP_CURL_DOWNLOAD) |
| get.c | Fun VM opcode snippet: HTTP GET via libcurl (OP_CURL_GET) |
| post.c | Fun VM opcode snippet: HTTP POST via libcurl (OP_CURL_POST) |
| ini | |
| free.c | VM opcode snippet for releasing an INI handle (OP_INI_FREE) |
| get_bool.c | VM opcode snippet for reading a boolean from an INI dictionary (OP_INI_GET_BOOL) |
| get_double.c | VM opcode snippet for reading a floating-point value from INI (OP_INI_GET_DOUBLE) |
| get_int.c | VM opcode snippet for reading an integer from INI (OP_INI_GET_INT) |
| get_string.c | VM opcode snippet for reading a string from INI (OP_INI_GET_STRING) |
| handles.c | INI handle registry implementation used by VM INI opcodes |
| handles.h | INI handle registry for iniparser 4.2.6 used by INI VM opcodes |
| load.c | VM opcode snippet for loading an INI file (OP_INI_LOAD) |
| save.c | VM opcode snippet for saving an INI dictionary to a file (OP_INI_SAVE) |
| set.c | VM opcode snippet for setting an INI value (OP_INI_SET) |
| stubs.c | Stub opcode implementations for INI support when FUN_WITH_INI is disabled |
| unset.c | VM opcode snippet for removing an INI entry (OP_INI_UNSET) |
| io | |
| input_line.c | Implements the OP_INPUT_LINE opcode for interactive console input |
| read_file.c | Implements the OP_READ_FILE opcode for reading file contents in the VM |
| write_file.c | Implements the OP_WRITE_FILE opcode for writing to a file in the VM |
| json | |
| from_file.c | VM opcode snippet for loading a JSON document from a file |
| parse.c | VM opcode snippet for parsing a JSON string into a Fun Value |
| stringify.c | VM opcode snippet for converting a Fun Value to a JSON string |
| to_file.c | VM opcode snippet for writing a Fun Value as JSON to a file |
| logic | |
| and.c | Implements the OP_AND opcode for logical AND in the VM |
| eq.c | Implements the OP_EQ opcode for equality comparison in the VM |
| gt.c | |
| gte.c | Implements the OP_GTE opcode for greater-than-or-equal comparison in the VM |
| lt.c | Implements the OP_LT opcode for less-than comparison in the VM |
| lte.c | Implements the OP_LTE opcode for less-than-or-equal comparison in the VM |
| neq.c | Implements the OP_NEQ opcode for inequality comparison in the VM |
| not.c | Implements the OP_NOT opcode for logical NOT in the VM |
| or.c | Implements the OP_OR opcode for logical OR in the VM |
| maps | |
| has_key.c | Implements the OP_HAS_KEY opcode for map key checking in the VM |
| keys.c | Implements the OP_KEYS opcode for retrieving map keys in the VM |
| make_map.c | Implements the OP_MAKE_MAP opcode for creating maps in the VM |
| values.c | Implements the OP_VALUES opcode for retrieving map values in the VM |
| math | |
| abs.c | Implements the OP_ABS opcode for absolute value in the VM |
| ceil.c | Implements the OP_CEIL opcode using C99 math.h ceil() |
| clamp.c | Implements the OP_CLAMP opcode for value clamping in the VM |
| cos.c | Implements the OP_COS opcode using C99 math.h cos() |
| exp.c | Implements the OP_EXP opcode using C99 math.h exp() |
| floor.c | Implements the OP_FLOOR opcode using C99 math.h floor() |
| fmax.c | Implements the OP_FMAX opcode using C99 math.h fmax(). Accepts int or float; follows IEEE-754 NaN handling per fmax |
| fmin.c | Implements the OP_FMIN opcode using C99 math.h fmin(). Accepts int or float; follows IEEE-754 NaN handling per fmin |
| gcd.c | Implements the OP_GCD opcode for greatest common divisor |
| isqrt.c | Implements the OP_ISQRT opcode for integer square root (floor) |
| lcm.c | Implements the OP_LCM opcode for least common multiple |
| log.c | Implements the OP_LOG opcode using C99 math.h log() (natural logarithm) |
| log10.c | Implements the OP_LOG10 opcode using C99 math.h log10() |
| max.c | Implements the OP_MAX opcode for finding the maximum of two values in the VM |
| min.c | Implements the OP_MIN opcode for finding the minimum of two values in the VM |
| mod.c | Implements the OP_MOD opcode for modulo operation in the VM |
| pow.c | Implements the OP_POW opcode for exponentiation in the VM |
| random_int.c | Implements the OP_RANDOM_INT opcode for generating random integers in the VM |
| random_seed.c | Implements the OP_RANDOM_SEED opcode for seeding the random number generator in the VM |
| round.c | Implements the OP_ROUND opcode using C99 math.h round(). C99 round() rounds half away from zero |
| sign.c | Implements the OP_SIGN opcode returning -1, 0, or 1 |
| sin.c | Implements the OP_SIN opcode using C99 math.h sin() |
| sqrt.c | Implements the OP_SQRT opcode using C99 math.h sqrt() |
| tan.c | Implements the OP_TAN opcode using C99 math.h tan() |
| trunc.c | Implements the OP_TRUNC opcode using C99 math.h trunc() |
| openssl | |
| md5.c | Implements OP_OPENSSL_MD5 to compute an MD5 hash in hexadecimal |
| ripemd160.c | Implements OP_OPENSSL_RIPEMD160 to compute a RIPEMD-160 hash in hex |
| sha256.c | Implements OP_OPENSSL_SHA256 to compute a SHA-256 hash in hex |
| sha512.c | Implements OP_OPENSSL_SHA512 to compute a SHA-512 hash in hex |
| os | |
| clock_mono_ms.c | Implements OP_CLOCK_MONO_MS to push monotonic clock in ms |
| date_format.c | Implements OP_DATE_FORMAT to format an epoch milliseconds timestamp using strftime |
| env.c | Implements OP_ENV to read an environment variable by name |
| env_all.c | Implements OP_ENV_ALL to read the full environment into a map |
| fd_poll_read.c | Implements OP_FD_POLL_READ to check if a file descriptor is readable |
| fd_poll_write.c | Implements OP_FD_POLL_WRITE to check if a file descriptor is writable |
| fd_set_nonblock.c | Implements OP_FD_SET_NONBLOCK to toggle O_NONBLOCK on a file descriptor |
| fun_version.c | VM opcode snippet: push the current Fun version string (OP_FUN_VERSION) |
| list_dir.c | Implements OP_OS_LIST_DIR to list entries in a directory |
| proc_run.c | Implements OP_PROC_RUN to execute a shell command and capture stdout |
| proc_system.c | Implements OP_PROC_SYSTEM to execute a shell command and return exit code |
| random_number.c | Implements OP_RANDOM_NUMBER to generate cryptographically secure random bytes |
| serial_close.c | Implements OP_SERIAL_CLOSE to close an open serial port |
| serial_config.c | Implements OP_SERIAL_CONFIG to change serial port parameters |
| serial_open.c | Implements OP_SERIAL_OPEN to open and configure a serial port |
| serial_recv.c | Implements OP_SERIAL_RECV to read bytes from a serial port |
| serial_send.c | Implements OP_SERIAL_SEND to write bytes to a serial port |
| sleep_ms.c | Implements OP_SLEEP_MS to suspend execution for a number of milliseconds |
| socket_close.c | Implements OP_SOCK_CLOSE to close a socket file descriptor |
| socket_recv.c | Implements OP_SOCK_RECV to receive data from a socket into a string |
| socket_send.c | Implements OP_SOCK_SEND to transmit data over a connected socket |
| socket_tcp_accept.c | Implements OP_SOCK_TCP_ACCEPT to accept an incoming TCP connection |
| socket_tcp_connect.c | Implements OP_SOCK_TCP_CONNECT to open a TCP connection |
| socket_tcp_listen.c | Implements OP_SOCK_TCP_LISTEN to create a TCP listening socket |
| socket_unix_connect.c | Implements OP_SOCK_UNIX_CONNECT to connect to a UNIX domain socket path |
| socket_unix_listen.c | Implements OP_SOCK_UNIX_LISTEN to create a UNIX domain listening socket |
| thread_common.c | Cross-platform thread helpers and registry used by OP_THREAD_SPAWN/OP_THREAD_JOIN |
| thread_join.c | Implements OP_THREAD_JOIN to wait for a spawned thread and get its result |
| thread_spawn.c | Implements OP_THREAD_SPAWN to run a function in a background thread |
| time_now_ms.c | Implements OP_TIME_NOW_MS to push current wall-clock time in ms since Unix epoch |
| pcre2 | |
| findall.c | Implements the OP_PCRE2_FINDALL opcode (conditional build) |
| match.c | Implements the OP_PCRE2_MATCH opcode (conditional build) |
| test.c | Implements the OP_PCRE2_TEST opcode (conditional build) |
| pcsc | |
| connect.c | Implements the OP_PCSC_CONNECT opcode (conditional build) |
| disconnect.c | Implements the OP_PCSC_DISCONNECT opcode (conditional build) |
| establish.c | Implements the OP_PCSC_ESTABLISH opcode (conditional build) |
| list_readers.c | Implements the OP_PCSC_LIST_READERS opcode (conditional build) |
| release.c | Implements the OP_PCSC_RELEASE opcode (conditional build) |
| transmit.c | Implements the OP_PCSC_TRANSMIT opcode (conditional build) |
| rust | |
| get_sp.c | Implements the OP_RUST_GET_SP opcode (conditional build) |
| hello.c | Implements the OP_RUST_HELLO opcode (conditional build) |
| hello_args.c | Implements the OP_RUST_HELLO_ARGS opcode (conditional build) |
| hello_args_return.c | Implements the OP_RUST_HELLO_ARGS_RETURN opcode (conditional build) |
| set_exit.c | Implements the OP_RUST_SET_EXIT opcode (conditional build) |
| sqlite | |
| close.c | Implements the OP_SQLITE_CLOSE opcode (conditional build) |
| exec.c | Implements the OP_SQLITE_EXEC opcode (conditional build) |
| open.c | Implements the OP_SQLITE_OPEN opcode (conditional build) |
| query.c | Implements the OP_SQLITE_QUERY opcode (conditional build) |
| strings | |
| find.c | Implements the OP_FIND opcode for finding substrings in the VM |
| regex_match.c | VM opcode snippet for OP_REGEX_MATCH (POSIX full-match) |
| regex_replace.c | VM opcode snippet for OP_REGEX_REPLACE (POSIX global replace) |
| regex_search.c | VM opcode snippet for OP_REGEX_SEARCH (POSIX first-match search) |
| split.c | Implements the OP_SPLIT opcode for splitting strings in the VM |
| substr.c | Implements the OP_SUBSTR opcode for extracting substrings in the VM |
| xml | |
| name.c | VM opcode snippet for XML node name retrieval |
| parse.c | VM opcode snippet for parsing XML text into a document handle |
| root.c | VM opcode snippet for retrieving the root node of an XML document |
| text.c | VM opcode snippet for retrieving the concatenated text of an XML node |
| cast.c | Implements the OP_CAST opcode for converting a value to a target type |
| echo.c | Implements the OP_ECHO opcode for printing without a trailing newline |
| len.c | Implements the OP_LEN opcode for getting the length of arrays or strings in the VM |
| line.c | Implements the OP_LINE pseudo-opcode to update the current source line |
| print.c | Implements the OP_PRINT opcode for printing values in the VM |
| sclamp.c | Implements the OP_SCLAMP opcode for signed N-bit two's-complement wrapping |
| to_number.c | Implements the OP_TO_NUMBER opcode for converting values to integers in the VM |
| to_string.c | Implements the OP_TO_STRING opcode for converting values to strings in the VM |
| typeof.c | Implements the OP_TYPEOF opcode for obtaining a human-readable type name |
| uclamp.c | Implements the OP_UCLAMP opcode for unsigned N-bit wrapping |
| array_utils.c | Utility functions for operating on Value arrays |
| bytecode.c | Bytecode container utilities: creation, mutation, dump helpers |
| bytecode.h | Definitions for the Fun VM bytecode: opcodes, instruction format, and bytecode container API |
| fun.c | Command-line interface and entry point for the Fun interpreter |
| fun_test.c | Minimal bytecode-level test harness for core VM operations |
| funstx.c | Syntax checker and auto-fixer tool for Fun source files |
| iter.c | Iterator-style helpers exposed as built-ins (enumerate, zip) |
| map.c | Simple string-keyed map implementation backing VAL_MAP Values |
| parser.c | Implements the Fun language parser that converts source code to bytecode |
| parser.h | Public API for parsing Fun source into bytecode |
| parser_utils.c | Low-level parsing helpers and include preprocessor for the Fun parser |
| repl.c | Interactive Read–Eval–Print Loop (REPL) for the Fun language |
| repl.h | Interactive Read-Eval-Print Loop (REPL) entry point |
| str_utils.c | Helpers for manipulating C strings and bridging with Value arrays |
| string.c | String built-ins wrappers used by VM opcodes |
| test_opcodes.c | Minimal executable exercising a subset of Fun VM opcodes |
| value.c | Implementation of the runtime Value type, including constructors, dynamic array/map utilities, copying, comparison, printing, and string conversion helpers |
| value.h | Defines the Value type and associated functions for the Fun VM |
| vm.c | Core virtual machine implementation and opcode dispatch for Fun |
| vm.h | Core virtual machine data structures and public VM API |