FLINT3.7.0-dev

FEXPR_TYPE_SMALL_INT, FEXPR_TYPE_SMALL_SYMBOL, FEXPR_TYPE_SMALL_STRING, FEXPR_TYPE_BIG_INT_POS, FEXPR_TYPE_BIG_INT_NEG, FEXPR_TYPE_BIG_SYMBOL, FEXPR_TYPE_BIG_STRING, FEXPR_TYPE_CALL0, FEXPR_TYPE_CALL1, FEXPR_TYPE_CALL2, FEXPR_TYPE_CALL3, FEXPR_TYPE_CALL4, FEXPR_TYPE_CALLN

Synopsis#include <flint/fexpr.h>
FEXPR_TYPE_SMALL_INTsource
FEXPR_TYPE_SMALL_SYMBOLsource
FEXPR_TYPE_SMALL_STRINGsource
FEXPR_TYPE_BIG_INT_POSsource
FEXPR_TYPE_BIG_INT_NEGsource
FEXPR_TYPE_BIG_SYMBOLsource
FEXPR_TYPE_BIG_STRINGsource
FEXPR_TYPE_CALL0source
FEXPR_TYPE_CALL1source
FEXPR_TYPE_CALL2source
FEXPR_TYPE_CALL3source
FEXPR_TYPE_CALL4source
FEXPR_TYPE_CALLNsource

The type codes stored in the low FEXPR_TYPE_BITS = 4 bits of the header word: small atoms stored in the header, large integers (with a sign) and large symbols and strings stored in the following words, and function calls with 0 to 4 arguments or with an argument count stored after the header.

Cite this page

The FLINT team, “FEXPR_TYPE_SMALL_INT, FEXPR_TYPE_SMALL_SYMBOL, FEXPR_TYPE_SMALL_STRING, FEXPR_TYPE_BIG_INT_POS, FEXPR_TYPE_BIG_INT_NEG, FEXPR_TYPE_BIG_SYMBOL, FEXPR_TYPE_BIG_STRING, FEXPR_TYPE_CALL0, FEXPR_TYPE_CALL1, FEXPR_TYPE_CALL2, FEXPR_TYPE_CALL3, FEXPR_TYPE_CALL4, FEXPR_TYPE_CALLN (fexpr.h),” FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev, 2026. https://flintlib.org/doc/fexpr/FEXPR_TYPE_SMALL_INT.html (generated 2026-10-20).