[/ Copyright 2011 - 2020 John Maddock. Copyright 2013 - 2019 Paul A. Bristow. Copyright 2013 Christopher Kormanyos. Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt). ] [section:mpf_ref gmp_float] namespace boost{ namespace multiprecision{ template class gmp_float; typedef number > mpf_float_50; typedef number > mpf_float_100; typedef number > mpf_float_500; typedef number > mpf_float_1000; typedef number > mpf_float; }} // namespaces Class template `gmp_float` fulfils all of the requirements for a [link boost_multiprecision.ref.backendconc Backend] type. Its members and non-member functions are deliberately not documented: these are considered implementation details that are subject to change. The class takes a single template parameter - `Digits10` - which is the number of decimal digits precision the type should support. When this parameter is zero, then the precision can be set at runtime via `number::default_precision` and `number::precision`. Note that this type does not in any way change the GMP library's global state (for example it does not change the default precision of the mpf_t data type), therefore you can safely mix this type with existing code that uses GMP, and also mix `gmp_float`s of differing precision. The type of `number_category >::type` is `mpl::int_`. More information on this type can be found in the [link boost_multiprecision.tut.floats.gmp_float tutorial]. [endsect]