Monero
Loading...
Searching...
No Matches
internal Namespace Reference

Classes

class  BigInteger
class  DecodedStream
struct  DiyFp
class  Double
class  GenericRegex
 Regular expression engine with subset of ECMAscript grammar. More...
class  GenericRegexSearch
class  Hasher
class  ISchemaStateFactory
class  ISchemaValidator
struct  IsGenericValue
struct  IsGenericValueImpl
struct  IsGenericValueImpl< T, typename Void< typename T::EncodingType >::Type, typename Void< typename T::AllocatorType >::Type >
class  IValidationErrorHandler
class  Schema
struct  SchemaValidationContext
class  Stack
 A type-unsafe stack for storing different types of data. More...
class  StreamLocalCopy
class  StreamLocalCopy< Stream, 0 >
 Keep reference. More...
class  StreamLocalCopy< Stream, 1 >
 Do copy optimization. More...
struct  TokenHelper
struct  TokenHelper< Stack, char >
struct  TypeHelper
struct  TypeHelper< ValueType, bool >
struct  TypeHelper< ValueType, const typename ValueType::Ch * >
struct  TypeHelper< ValueType, double >
struct  TypeHelper< ValueType, float >
struct  TypeHelper< ValueType, int >
struct  TypeHelper< ValueType, int64_t >
struct  TypeHelper< ValueType, typename ValueType::Array >
struct  TypeHelper< ValueType, typename ValueType::ConstArray >
struct  TypeHelper< ValueType, typename ValueType::ConstObject >
struct  TypeHelper< ValueType, typename ValueType::Object >
struct  TypeHelper< ValueType, uint64_t >
struct  TypeHelper< ValueType, unsigned >

Typedefs

typedef GenericRegex< UTF8<> > Regex
typedef GenericRegexSearch< RegexRegexSearch

Functions

DiyFp GetCachedPowerByIndex (size_t index)
DiyFp GetCachedPower (int e, int *K)
DiyFp GetCachedPower10 (int exp, int *outExp)
void GrisuRound (char *buffer, int len, uint64_t delta, uint64_t rest, uint64_t ten_kappa, uint64_t wp_w)
int CountDecimalDigit32 (uint32_t n)
void DigitGen (const DiyFp &W, const DiyFp &Mp, uint64_t delta, char *buffer, int *len, int *K)
void Grisu2 (double value, char *buffer, int *length, int *K)
char * WriteExponent (int K, char *buffer)
char * Prettify (char *buffer, int length, int k, int maxDecimalPlaces)
char * dtoa (double value, char *buffer, int maxDecimalPlaces=324)
const char * GetDigitsLut ()
char * u32toa (uint32_t value, char *buffer)
char * i32toa (int32_t value, char *buffer)
char * u64toa (uint64_t value, char *buffer)
char * i64toa (int64_t value, char *buffer)
double Pow10 (int n)
 Computes integer powers of 10 in double (10.0^n).
template<typename Ch>
SizeType StrLen (const Ch *s)
 Custom strlen() which works on different character types.
template<>
SizeType StrLen (const char *s)
template<>
SizeType StrLen (const wchar_t *s)
template<typename Encoding>
bool CountStringCodePoint (const typename Encoding::Ch *s, SizeType length, SizeType *outCount)
 Returns number of code points in a encoded string.
double FastPath (double significand, int exp)
double StrtodNormalPrecision (double d, int p)
template<typename T>
T Min3 (T a, T b, T c)
int CheckWithinHalfULP (double b, const BigInteger &d, int dExp)
bool StrtodFast (double d, int p, double *result)
bool StrtodDiyFp (const char *decimals, int dLen, int dExp, double *result)
double StrtodBigInteger (double approx, const char *decimals, int dLen, int dExp)
double StrtodFullPrecision (double d, int p, const char *decimals, size_t length, size_t decimalPosition, int exp)
template<typename T>
void Swap (T &a, T &b) RAPIDJSON_NOEXCEPT
 Custom swap() to avoid dependency on C++ <algorithm> header.

Variables

static const SizeType kRegexInvalidState = ~SizeType(0)
 Represents an invalid index in GenericRegex::State::out, out1.
static const SizeType kRegexInvalidRange = ~SizeType(0)

Typedef Documentation

◆ Regex

◆ RegexSearch

Function Documentation

◆ CheckWithinHalfULP()

int internal::CheckWithinHalfULP ( double b,
const BigInteger & d,
int dExp )
inline

◆ CountDecimalDigit32()

int internal::CountDecimalDigit32 ( uint32_t n)
inline

◆ CountStringCodePoint()

template<typename Encoding>
bool internal::CountStringCodePoint ( const typename Encoding::Ch * s,
SizeType length,
SizeType * outCount )

Returns number of code points in a encoded string.

◆ DigitGen()

void internal::DigitGen ( const DiyFp & W,
const DiyFp & Mp,
uint64_t delta,
char * buffer,
int * len,
int * K )
inline

◆ dtoa()

char * internal::dtoa ( double value,
char * buffer,
int maxDecimalPlaces = 324 )
inline

◆ FastPath()

double internal::FastPath ( double significand,
int exp )
inline

◆ GetCachedPower()

DiyFp internal::GetCachedPower ( int e,
int * K )
inline

◆ GetCachedPower10()

DiyFp internal::GetCachedPower10 ( int exp,
int * outExp )
inline

◆ GetCachedPowerByIndex()

DiyFp internal::GetCachedPowerByIndex ( size_t index)
inline

◆ GetDigitsLut()

const char * internal::GetDigitsLut ( )
inline

◆ Grisu2()

void internal::Grisu2 ( double value,
char * buffer,
int * length,
int * K )
inline

◆ GrisuRound()

void internal::GrisuRound ( char * buffer,
int len,
uint64_t delta,
uint64_t rest,
uint64_t ten_kappa,
uint64_t wp_w )
inline

closer

◆ i32toa()

char * internal::i32toa ( int32_t value,
char * buffer )
inline

◆ i64toa()

char * internal::i64toa ( int64_t value,
char * buffer )
inline

◆ Min3()

template<typename T>
T internal::Min3 ( T a,
T b,
T c )
inline

◆ Pow10()

double internal::Pow10 ( int n)
inline

Computes integer powers of 10 in double (10.0^n).

This function uses lookup table for fast and accurate results.

Parameters
nnon-negative exponent. Must <= 308.
Returns
10.0^n

◆ Prettify()

char * internal::Prettify ( char * buffer,
int length,
int k,
int maxDecimalPlaces )
inline

◆ StrLen() [1/3]

template<typename Ch>
SizeType internal::StrLen ( const Ch * s)
inline

Custom strlen() which works on different character types.

Template Parameters
ChCharacter type (e.g. char, wchar_t, short)
Parameters
sNull-terminated input string.
Returns
Number of characters in the string.
Note
This has the same semantics as strlen(), the return value is not number of Unicode codepoints.

◆ StrLen() [2/3]

template<>
SizeType internal::StrLen ( const char * s)
inline

◆ StrLen() [3/3]

template<>
SizeType internal::StrLen ( const wchar_t * s)
inline

◆ StrtodBigInteger()

double internal::StrtodBigInteger ( double approx,
const char * decimals,
int dLen,
int dExp )
inline

◆ StrtodDiyFp()

bool internal::StrtodDiyFp ( const char * decimals,
int dLen,
int dExp,
double * result )
inline

◆ StrtodFast()

bool internal::StrtodFast ( double d,
int p,
double * result )
inline

◆ StrtodFullPrecision()

double internal::StrtodFullPrecision ( double d,
int p,
const char * decimals,
size_t length,
size_t decimalPosition,
int exp )
inline

◆ StrtodNormalPrecision()

double internal::StrtodNormalPrecision ( double d,
int p )
inline

◆ Swap()

template<typename T>
void internal::Swap ( T & a,
T & b )
inline

Custom swap() to avoid dependency on C++ <algorithm> header.

Template Parameters
TType of the arguments to swap, should be instantiated with primitive C++ types only.
Note
This has the same semantics as std::swap().

◆ u32toa()

char * internal::u32toa ( uint32_t value,
char * buffer )
inline

◆ u64toa()

char * internal::u64toa ( uint64_t value,
char * buffer )
inline

◆ WriteExponent()

char * internal::WriteExponent ( int K,
char * buffer )
inline

Variable Documentation

◆ kRegexInvalidRange

const SizeType internal::kRegexInvalidRange = ~SizeType(0)
static

◆ kRegexInvalidState

const SizeType internal::kRegexInvalidState = ~SizeType(0)
static

Represents an invalid index in GenericRegex::State::out, out1.