Classes | Namespaces | Functions

jstl.h File Reference

#include "jsbit.h"
#include "jsstaticcheck.h"
#include <new>
#include <string.h>
Include dependency graph for jstl.h:
This graph shows which files directly or indirectly include this file:

Classes

struct  js::tl::Min< i, j >
struct  js::tl::Max< i, j >
struct  js::tl::Clamp< i, min, max >
struct  js::tl::Pow< x, y >
struct  js::tl::Pow< x, 0 >
struct  js::tl::FloorLog2< i >
struct  js::tl::FloorLog2< 0 >
struct  js::tl::FloorLog2< 1 >
struct  js::tl::CeilingLog2< i >
struct  js::tl::RoundUpPow2< i >
struct  js::tl::RoundUpPow2< 0 >
struct  js::tl::BitSize< T >
struct  js::tl::StaticAssert< bool >
struct  js::tl::StaticAssert< true >
struct  js::tl::IsSameType< T, U >
struct  js::tl::IsSameType< T, T >
struct  js::tl::NBitMask< N >
struct  js::tl::NBitMask< BitSize< size_t >::result >
struct  js::tl::MulOverflowMask< N >
struct  js::tl::MulOverflowMask< 0 >
struct  js::tl::MulOverflowMask< 1 >
struct  js::tl::UnsafeRangeSizeMask< T >
struct  js::tl::StripConst< T >
struct  js::tl::StripConst< const T >
struct  js::tl::IsPodType< T >
struct  js::tl::IsPodType< char >
struct  js::tl::IsPodType< signed char >
struct  js::tl::IsPodType< unsigned char >
struct  js::tl::IsPodType< short >
struct  js::tl::IsPodType< unsigned short >
struct  js::tl::IsPodType< int >
struct  js::tl::IsPodType< unsigned int >
struct  js::tl::IsPodType< long >
struct  js::tl::IsPodType< unsigned long >
struct  js::tl::IsPodType< float >
struct  js::tl::IsPodType< double >
class  js::ReentrancyGuard
class  js::SystemAllocPolicy
struct  js::AlignedStorage< nbytes >
union  js::AlignedStorage< nbytes >::U
struct  js::AlignedStorage2< T >
union  js::AlignedStorage2< T >::U
class  js::LazilyConstructed< T >
class  js::Conditionally< T >
class  js::AlignedPtrAndFlag< T >

Namespaces

namespace  js
namespace  js::tl

Functions

template<class T , size_t N>
T * js::tl::ArraySize (T(&)[N])
template<class T , size_t N>
T * js::tl::ArrayEnd (T(&arr)[N])
size_t js::RoundUpPow2 (size_t x)
template<class T >
size_t js::PointerRangeSize (T *begin, T *end)
template<typename InputIterT , typename CallableT >
void js::ForEach (InputIterT begin, InputIterT end, CallableT f)