tin  1.5.9
profile.h File Reference

Target profile contracts for production and embedded builds. More...

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  tsm::platform::host_linux_profile
 
struct  tsm::platform::bare_metal_arm_profile
 Bare-metal ARM profile for superloop or interrupt-woken deployments. More...
 
struct  tsm::platform::freertos_arm_profile
 FreeRTOS profile for task-notification and queue-backed deployments. More...
 
struct  tsm::platform::zephyr_arm_profile
 Zephyr profile for k_poll, semaphore, and tick-backed deployments. More...
 
struct  tsm::platform::qnx7_profile
 QNX Neutrino 7.x profile for pulse-woken realtime process deployments. More...
 
struct  tsm::platform::safety_profile
 Conservative production profile for safety-oriented embedded builds. More...
 

Namespaces

 tsm
 
 tsm::platform
 
 tsm::platform::detail
 

Functions

template<typename Profile >
consteval bool tsm::platform::compiler_satisfies_profile ()
 
template<typename Profile >
consteval void tsm::platform::enforce_compiler_profile ()
 Require the active compiler configuration to match Profile. More...
 

Variables

constexpr bool tsm::platform::detail::compiler_exceptions_enabled = false
 
constexpr bool tsm::platform::detail::compiler_rtti_enabled = false
 

Detailed Description

Target profile contracts for production and embedded builds.

A target profile records the platform assumptions that matter to the core runtime: heap use, exceptions, RTTI, host threads, wall-clock access, and tick-driven time. Profiles are intentionally compile-time objects. They let an application state what a deployment permits, then fail compilation when the compiler configuration contradicts that deployment contract.