foobar2000 SDK  2015-01-14
selftest.cpp
Go to the documentation of this file.
1 #include "pfc.h"
2 
3 
4 namespace {
5  class foo {};
6 }
7 
8 inline pfc::string_base & operator<<(pfc::string_base & p_fmt,foo p_source) {p_fmt.add_string_("FOO"); return p_fmt;}
9 
10 namespace pfc {
11  void selftest();
12 }
13 
14 void pfc::selftest() //never called, testing done at compile time
15 {
16  PFC_STATIC_ASSERT( sizeof(t_uint8) == 1 );
17  PFC_STATIC_ASSERT( sizeof(t_uint16) == 2 );
18  PFC_STATIC_ASSERT( sizeof(t_uint32) == 4 );
19  PFC_STATIC_ASSERT( sizeof(t_uint64) == 8 );
20 
21  PFC_STATIC_ASSERT( sizeof(t_int8) == 1 );
22  PFC_STATIC_ASSERT( sizeof(t_int16) == 2 );
23  PFC_STATIC_ASSERT( sizeof(t_int32) == 4 );
24  PFC_STATIC_ASSERT( sizeof(t_int64) == 8 );
25 
26  PFC_STATIC_ASSERT( sizeof(t_float32) == 4 );
27  PFC_STATIC_ASSERT( sizeof(t_float64) == 8 );
28 
29  PFC_STATIC_ASSERT( sizeof(t_size) == sizeof(void*) );
30  PFC_STATIC_ASSERT( sizeof(t_ssize) == sizeof(void*) );
31 
32  PFC_STATIC_ASSERT( sizeof(wchar_t) == 2 || sizeof(wchar_t) == 4 );
33 
34  PFC_STATIC_ASSERT( sizeof(GUID) == 16 );
35 
36  typedef pfc::avltree_t<int> t_asdf;
37  t_asdf asdf; asdf.add_item(1);
38  t_asdf::iterator iter = asdf._first_var();
39  t_asdf::const_iterator iter2 = asdf._first_var();
40 
41  PFC_string_formatter() << "foo" << 1337 << foo();
42 
43  pfc::list_t<int> l; l.add_item(3);
44 
45 }
uint8_t t_uint8
Definition: int_types.h:9
Definition: pfc.h:53
uint64_t t_uint64
Definition: int_types.h:3
int16_t t_int16
Definition: int_types.h:6
double t_float64
Definition: int_types.h:15
int32_t t_int32
Definition: int_types.h:4
size_t t_size
Definition: int_types.h:48
uint16_t t_uint16
Definition: int_types.h:7
void selftest()
Definition: selftest.cpp:14
t_storage & add_item(t_param const &p_item)
Definition: avltree.h:380
pfc::sized_int_t< sizeof(size_t) >::t_signed t_ssize
Definition: int_types.h:49
void add_string_(const char *str)
Definition: string_base.h:39
float t_float32
Definition: int_types.h:14
uint32_t t_uint32
Definition: int_types.h:5
int64_t t_int64
Definition: int_types.h:2
int8_t t_int8
Definition: int_types.h:8
pfc::string_base & operator<<(pfc::string_base &p_fmt, foo p_source)
Definition: selftest.cpp:8