modernc.org/cc@v1.0.1/v2/testdata/_sqlite/ext/misc/README.md (about) 1 ## Miscellaneous Extensions 2 3 This folder contains a collection of smaller loadable extensions. 4 See <https://www.sqlite.org/loadext.html> for instructions on how 5 to compile and use loadable extensions. 6 Each extension in this folder is implemented in a single file of C code. 7 8 Each source file contains a description in its header comment. See the 9 header comments for details about each extension. Additional notes are 10 as follows: 11 12 * **carray.c** — This module implements the 13 [carray](https://www.sqlite.org/carray.html) table-valued function. 14 It is a good example of how to go about implementing a custom 15 [table-valued function](https://www.sqlite.org/vtab.html#tabfunc2). 16 17 * **dbdump.c** — This is not actually a loadable extension, but 18 rather a library that implements an approximate equivalent to the 19 ".dump" command of the 20 [command-line shell](https://www.sqlite.org/cli.html). 21 22 * **memvfs.c** — This file implements a custom 23 [VFS](https://www.sqlite.org/vfs.html) that stores an entire database 24 file in a single block of RAM. It serves as a good example of how 25 to implement a simple custom VFS. 26 27 * **rot13.c** — This file implements the very simple rot13() 28 substitution function. This file makes a good template for implementing 29 new custom SQL functions for SQLite. 30 31 * **series.c** — This is an implementation of the 32 "generate_series" [virtual table](https://www.sqlite.org/vtab.html). 33 It can make a good template for new custom virtual table implementations. 34 35 * **shathree.c** — An implementation of the sha3() and 36 sha3_query() SQL functions. The file is named "shathree.c" instead 37 of "sha3.c" because the default entry point names in SQLite are based 38 on the source filename with digits removed, so if we used the name 39 "sha3.c" then the entry point would conflict with the prior "sha1.c" 40 extension.