theCore C++ embedded framework
|
Main iostream module. More...
Namespaces | |
ecl | |
Typedefs | |
using | ecl::cin_type = istream< console_driver > |
using | ecl::cout_type = ostream< console_driver > |
using | ecl::cerr_type = ostream< console_driver > |
Variables | |
static int | ecl::nifty_counter |
Tracks initialization and destruction. More... | |
static std::aligned_storage< sizeof(console_driver), alignof(console_driver) >::type | ecl::console_obj_buf |
Memory for the console device driver. More... | |
static std::aligned_storage< sizeof(cin_type), alignof(cin_type) >::type | ecl::cin_obj_buf |
Memory for the cin object. More... | |
static std::aligned_storage< sizeof(cout_type), alignof(cout_type) >::type | ecl::cout_obj_buf |
Memory for the cout object. More... | |
static std::aligned_storage< sizeof(cerr_type), alignof(cerr_type) >::type | ecl::cerr_obj_buf |
Memory for the cerr object. More... | |
istream< console_driver >::device_type & | ecl::console_device = reinterpret_cast< console_driver& >(console_obj_buf) |
cin_type & | ecl::cin = reinterpret_cast< cin_type& >(cin_obj_buf) |
cout_type & | ecl::cout = reinterpret_cast< cout_type& >(cout_obj_buf) |
cerr_type & | ecl::cerr = reinterpret_cast< cerr_type& >(cerr_obj_buf) |
Main iostream module.
Nifty counter idiom is used here. See wiki article about that