CHERIoT RTOS
A compartmentalised RTOS for CHERIoT hardware
Loading...
Searching...
No Matches
DebugWriter Struct Referenceabstract

Abstract class for writing debug output. More...

#include <debug.hh>

Public Member Functions

virtual void write (char)=0
 Write a single character.
virtual void write (const char *)=0
 Write a C string.
virtual void write (std::string_view)=0
 Write a string view.
virtual void write (uint32_t)=0
 Write a 32-bit unsigned integer.
virtual void write (int32_t)=0
 Write a 32-bit signed integer.
virtual void write (uint64_t)=0
 Write a 64-bit unsigned integer.
virtual void write (int64_t)=0
 Write a 64-bit signed integer.
virtual void write_hex_byte (uint8_t)=0
 Write a single byte as hex with no leading 0x.
virtual void write (float)=0
 Write a single-precision floating-point value.
virtual void write (double)=0
 Write a double-precision floating-point value.
template<typename T>
requires (std::integral<T>)
void write_hex (T x)
 Write an integer as hex.
template<typename T>
requires (std::integral<T>)
void write_decimal (T x)
 Write an integer as decimal.

Detailed Description

Abstract class for writing debug output.

This is used for custom output.

This may be changed in the future to provide better support for custom formatting.

Definition at line 70 of file debug.hh.

Member Function Documentation

◆ write() [1/2]

virtual void DebugWriter::write ( double )
pure virtual

Write a double-precision floating-point value.

If floating-point support is not compiled into the debug library, this may print a placeholder.

◆ write() [2/2]

virtual void DebugWriter::write ( float )
pure virtual

Write a single-precision floating-point value.

If floating-point support is not compiled into the debug library, this may print a placeholder.

◆ write_decimal()

template<typename T>
requires (std::integral<T>)
void DebugWriter::write_decimal ( T x)
inline

Write an integer as decimal.

Definition at line 138 of file debug.hh.

References write().

◆ write_hex()

template<typename T>
requires (std::integral<T>)
void DebugWriter::write_hex ( T x)
inline

Write an integer as hex.

Definition at line 122 of file debug.hh.

References write().


The documentation for this struct was generated from the following file: