Elaztek Developer Hub
Blamite Game Engine - blam!  00398.09.22.23.2015.blamite
The core library for the Blamite Game Engine.
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 >
 
struct  IsRefCounted
 
struct  IsRefCounted< T, typename internal::EnableIfCond< T::kRefCounted >::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

uint32_t clzll (uint64_t x)
 
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). More...
 
template<typename Ch >
SizeType StrLen (const Ch *s)
 Custom strlen() which works on different character types. More...
 
template<>
SizeType StrLen (const char *s)
 
template<>
SizeType StrLen (const wchar_t *s)
 
template<typename Ch >
int StrCmp (const Ch *s1, const Ch *s2)
 Custom strcmpn() which works on different character types. More...
 
template<typename Encoding >
bool CountStringCodePoint (const typename Encoding::Ch *s, SizeType length, SizeType *outCount)
 Returns number of code points in a encoded string. More...
 
double FastPath (double significand, int exp)
 
double StrtodNormalPrecision (double d, int p)
 
template<typename 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)
 
template<typename Ch >
bool StrtodDiyFp (const Ch *decimals, int dLen, int dExp, double *result)
 
template<typename Ch >
double StrtodBigInteger (double approx, const Ch *decimals, int dLen, int dExp)
 
template<typename Ch >
double StrtodFullPrecision (double d, int p, const Ch *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. More...
 

Typedef Documentation

◆ Regex

◆ RegexSearch

Function Documentation

◆ CheckWithinHalfULP()

int internal::CheckWithinHalfULP ( double  b,
const BigInteger d,
int  dExp 
)
inline
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ clzll()

uint32_t internal::clzll ( uint64_t  x)
inline
+ Here is the caller graph for this function:

◆ CountDecimalDigit32()

int internal::CountDecimalDigit32 ( uint32_t  n)
inline
+ Here is the caller graph for this function:

◆ 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
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ dtoa()

char* internal::dtoa ( double  value,
char *  buffer,
int  maxDecimalPlaces = 324 
)
inline
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ FastPath()

double internal::FastPath ( double  significand,
int  exp 
)
inline
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetCachedPower()

DiyFp internal::GetCachedPower ( int  e,
int *  K 
)
inline
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetCachedPower10()

DiyFp internal::GetCachedPower10 ( int  exp,
int *  outExp 
)
inline
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetCachedPowerByIndex()

DiyFp internal::GetCachedPowerByIndex ( size_t  index)
inline
+ Here is the caller graph for this function:

◆ GetDigitsLut()

const char* internal::GetDigitsLut ( )
inline
+ Here is the caller graph for this function:

◆ Grisu2()

void internal::Grisu2 ( double  value,
char *  buffer,
int *  length,
int *  K 
)
inline
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GrisuRound()

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

closer

+ Here is the caller graph for this function:

◆ i32toa()

char* internal::i32toa ( int32_t  value,
char *  buffer 
)
inline
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ i64toa()

char* internal::i64toa ( int64_t  value,
char *  buffer 
)
inline
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ Min3()

template<typename T >
T internal::Min3 ( a,
b,
c 
)
inline
+ Here is the caller graph for this function:

◆ 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
+ Here is the caller graph for this function:

◆ Prettify()

char* internal::Prettify ( char *  buffer,
int  length,
int  k,
int  maxDecimalPlaces 
)
inline
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ StrCmp()

template<typename Ch >
int internal::StrCmp ( const Ch *  s1,
const Ch *  s2 
)
inline

Custom strcmpn() which works on different character types.

Template Parameters
ChCharacter type (e.g. char, wchar_t, short)
Parameters
s1Null-terminated input string.
s2Null-terminated input string.
Returns
0 if equal

◆ 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.
+ Here is the caller graph for this function:

◆ StrLen() [2/3]

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

◆ StrLen() [3/3]

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

◆ StrtodBigInteger()

template<typename Ch >
double internal::StrtodBigInteger ( double  approx,
const Ch *  decimals,
int  dLen,
int  dExp 
)
inline
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ StrtodDiyFp()

template<typename Ch >
bool internal::StrtodDiyFp ( const Ch *  decimals,
int  dLen,
int  dExp,
double *  result 
)
inline
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ StrtodFast()

bool internal::StrtodFast ( double  d,
int  p,
double *  result 
)
inline
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ StrtodFullPrecision()

template<typename Ch >
double internal::StrtodFullPrecision ( double  d,
int  p,
const Ch *  decimals,
size_t  length,
size_t  decimalPosition,
int  exp 
)
inline
+ Here is the call graph for this function:

◆ StrtodNormalPrecision()

double internal::StrtodNormalPrecision ( double  d,
int  p 
)
inline
+ Here is the call graph for this function:

◆ 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().
+ Here is the caller graph for this function:

◆ u32toa()

char* internal::u32toa ( uint32_t  value,
char *  buffer 
)
inline
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ u64toa()

char* internal::u64toa ( uint64_t  value,
char *  buffer 
)
inline
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ WriteExponent()

char* internal::WriteExponent ( int  K,
char *  buffer 
)
inline
+ Here is the call graph for this function:
+ Here is the caller graph for this function: