NanoLang API Reference

*Auto-generated module documentation from reflection*

NanoLang Mascot

This directory contains complete API references for all NanoLang modules, automatically generated from the module source code using the compiler's reflection capabilities.

Standard Library

  • log - Structured logging with log levels (TRACE, DEBUG, INFO, WARN, ERROR, FATAL)
  • coverage - Code coverage tracking and reporting
  • StringBuilder - Efficient string building and manipulation
  • ~~regex~~ - Regular expression support *(documentation pending)*

SDL Family (Graphics & Audio)

  • sdl - SDL2 bindings for window management, rendering, and input
  • sdl_image - SDL_image for loading various image formats
  • sdl_mixer - SDL_mixer for audio playback
  • sdl_ttf - SDL_ttf for TrueType font rendering

Terminal

  • ncurses - Terminal UI library for creating text-based interfaces

Network

  • curl - HTTP client using libcurl
  • http_server - Simple HTTP server
  • uv - libuv bindings for async I/O and event loop

Data

  • sqlite - SQLite database bindings

Graphics

  • opengl - OpenGL bindings for 3D graphics
  • glew - GLEW for OpenGL extension loading
  • glfw - GLFW for window and input management
  • glut - GLUT for simple OpenGL applications

Physics

  • bullet - Bullet Physics engine bindings

Utilities

---

About This Documentation

These API references are generated automatically using the NanoLang compiler's --reflect flag and a **NanoLang-based generator**, which extracts complete module metadata including:

  • Function signatures with parameter types
  • Struct definitions with field information
  • Enum variants
  • Union types with variants
  • Opaque types (C pointer types)
  • Module constants

To regenerate this documentation:


perl -e 'alarm 60; exec @ARGV' ./bin/nanoc scripts/generate_module_api_docs.nano -o build/userguide/generate_module_api_docs
bash scripts/generate_all_api_docs.sh

Last updated: 2026-01-18