gem5 v25.0.0.1
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 Sat Oct 18 2025 08:06:47 for gem5 by doxygen 1.14.0