gem5 [DEVELOP-FOR-25.0]
Loading...
Searching...
No Matches
ostream_helpers.hh File Reference
#include <iostream>
#include <memory>
#include <tuple>
#include <utility>
#include "base/type_traits.hh"
#include "magic_enum/magic_enum.hh"

Go to the source code of this file.

Classes

struct  gem5::stl_helpers::Printer< T >
 

Namespaces

namespace  gem5
 Copyright (c) 2024 Arm Limited All rights reserved.
 
namespace  gem5::stl_helpers
 
namespace  gem5::stl_helpers::opExtract_impl
 

Functions

template<typename T>
std::ostream & gem5::stl_helpers::opExtract_impl::opExtractSecDisp (std::ostream &os, const T &v)
 
template<typename E>
std::enable_if_t< std::is_enum_v< E >, std::ostream & > gem5::stl_helpers::opExtract_impl::opExtractPrimDisp (std::ostream &os, const E &e)
 
template<typename... T>
std::ostream & gem5::stl_helpers::opExtract_impl::opExtractPrimDisp (std::ostream &os, const std::tuple< T... > &p)
 
template<typename T, typename U>
std::ostream & gem5::stl_helpers::opExtract_impl::opExtractPrimDisp (std::ostream &os, const std::pair< T, U > &p)
 
template<typename T>
std::enable_if_t< is_iterable_v< T >, std::ostream & > gem5::stl_helpers::opExtract_impl::opExtractPrimDisp (std::ostream &os, const T &v)
 
template<typename T>
std::ostream & gem5::stl_helpers::opExtract_impl::opExtractPrimDisp (std::ostream &os, const std::optional< T > &o)
 
template<typename T>
std::ostream & gem5::stl_helpers::opExtract_impl::opExtractPrimDisp (std::ostream &os, T *p)
 
template<typename T>
std::ostream & gem5::stl_helpers::opExtract_impl::opExtractPrimDisp (std::ostream &os, const std::shared_ptr< T > &p)
 
template<typename T>
std::ostream & gem5::stl_helpers::opExtract_impl::opExtractPrimDisp (std::ostream &os, const std::unique_ptr< T > &p)
 
template<typename T>
std::ostream & gem5::stl_helpers::opExtract_impl::opExtractPrimDisp (std::ostream &os, const Printer< T > &p)
 
template<typename T>
std::enable_if_t< opExtract_impl::needsDispatch< T >, std::ostream & > gem5::stl_helpers::operator<< (std::ostream &os, const T &v)
 

Variables

template<typename, typename = void>
constexpr bool gem5::stl_helpers::opExtract_impl::isOpExtractNativelySupported = false
 
template<typename T>
constexpr bool gem5::stl_helpers::opExtract_impl::isOpExtractNativelySupported< T, std::void_t< decltype(std::declval< std::ostream & >()<< std::declval< T >())> > = true
 
template<typename, typename = void>
constexpr bool gem5::stl_helpers::opExtract_impl::isOpExtractHelped = false
 
template<typename T>
constexpr bool gem5::stl_helpers::opExtract_impl::isOpExtractHelped< T, std::void_t< decltype(opExtractPrimDisp(std::declval< std::ostream & >(), std::declval< T >()))> > = true
 
template<typename T>
constexpr bool gem5::stl_helpers::opExtract_impl::needsDispatch
 

Generated on Mon May 26 2025 09:19:16 for gem5 by doxygen 1.13.2