Function Reference

Built-in functions and member functions, grouped by purpose.

On this page

Explore built-in functions and member methods by topic. These pages are generated from runtime registrations; availability depends on the target and build. For broader language documentation, see BoxLang.

How to read the tables

ColumnMeaning
FunctionThe function name. Member-only entries are written type.name.
FormsHow to call it. name( ... ) is the global form and type.name( ... ) is the member form on a value of that type, for example string.ucase( ... ). A literal ... means the argument list is not recorded here. Functions written in BoxLang show their real parameters.
Gatealways, or the cargo feature or crate that must be enabled for the function to exist.
NotesBehavior notes. Text appears only where it was checked against the source or by running MatchBox.

Function names are not case sensitive; the pages show the usual spelling.

Pages

Counts

  • Global functions: 610. 532 are native Rust functions, 55 are written in BoxLang (the prelude), 8 exist in both, 3 are handled by the compiler (println, print and echo; echo also exists as a native function) and 12 are TUI class names.
  • ESP32 firmware functions: 29 (included in the global count above).
  • Member functions on built-in types: 314.
  • Native object methods: 226.
  • Internal helper functions that only back the member table (boxSet*, arrayAppendMember) are not listed: 31.

Feature gates

A gate names the build feature or runner a function needs. Features can also be enabled by dependencies; see source builds for custom builds. The browser playground includes only always functions.

Other features change behavior without adding functions:

  • qoq (not default): enables query of queries. queryExecute with dbtype: "query" returns the error "QoQ support is not enabled in this build" without it.
  • bif-jni (default): createObject( "java", ... ) creates Java objects. Without it the call fails with "Java interoperability is not enabled in this build."

Not available in the browser playground

143 of the 610 global functions are not available in the playground build: the gated functions, including the ESP32 functions and the TUI classes. Common examples are hash, encrypt, fileRead, directoryList, http, queryNew, queryExecute, cliRead and exit. Member functions whose target function is gated are unavailable there too, for example string.hash( ... ).

Prelude functions called as members

The prelude is the part of the standard library written in BoxLang. Tree-shaking removes unused functions when compiling an application. For dynamically selected functions, use --keep name or --no-shaking when needed.

Regenerating

node tools/gen-bif-reference.mjs ../matchbox            # rewrite docs/data/functions.json and these pages
node tools/gen-bif-reference.mjs ../matchbox --check    # exit 1 when the committed files are stale
Edit this page Download Markdown Last updated Oct 27, 2026, 1:45:34 PM Report an issue