gr_generic_init, gr_generic_clear, gr_generic_swap, gr_generic_randtest, gr_generic_write, gr_generic_zero, gr_generic_one, gr_generic_equal, gr_generic_set, gr_generic_set_si, gr_generic_set_ui, gr_generic_set_fmpz, gr_generic_neg, gr_generic_add, gr_generic_sub, gr_generic_mul
#include <flint/gr_generic.h>gr_generic_initsourcegr_generic_clearsourcegr_generic_swapsourcegr_generic_randtestsourcegr_generic_writesourcegr_generic_zerosourcegr_generic_onesourcegr_generic_equalsourcegr_generic_setsourcegr_generic_set_sisourcegr_generic_set_uisourcegr_generic_set_fmpzsourcegr_generic_negsourcegr_generic_addsourcegr_generic_subsourcegr_generic_mulsourceThe methods that every ring must implement have no real default: these names are defined as gr_not_implemented, which returns GR_UNABLE without doing anything. If GR_GENERIC_DEBUG_RINGS is set to 1 when gr_generic.h is compiled, they are instead functions that throw an exception naming the missing method.
Guides#
- Implementing a ring (
gr)
The FLINT team, “gr_generic_init, gr_generic_clear, gr_generic_swap, gr_generic_randtest, gr_generic_write, gr_generic_zero, gr_generic_one, gr_generic_equal, gr_generic_set, gr_generic_set_si, gr_generic_set_ui, gr_generic_set_fmpz, gr_generic_neg, gr_generic_add, gr_generic_sub, gr_generic_mul (gr_generic.h),” FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev, 2026. https://flintlib.org/doc/gr_generic/gr_generic_init.html (generated 2026-10-20).
@misc{flint-doc-gr-generic-gr-generic-init,
author = {{The FLINT team}},
title = {{gr\_generic\_init, gr\_generic\_clear, gr\_generic\_swap, gr\_generic\_randtest, gr\_generic\_write, gr\_generic\_zero, gr\_generic\_one, gr\_generic\_equal, gr\_generic\_set, gr\_generic\_set\_si, gr\_generic\_set\_ui, gr\_generic\_set\_fmpz, gr\_generic\_neg, gr\_generic\_add, gr\_generic\_sub, gr\_generic\_mul (gr\_generic.h)}},
howpublished = {FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev},
year = {2026},
url = {https://flintlib.org/doc/gr_generic/gr_generic_init.html},
note = {Generated 2026-10-20}
}