template<typename State, typename Value, typename Selector, uint32_t... Registers>
struct microfmt::register_selected_field< State, Value, Selector, Registers >
Compile-time field trait with state-dependent member selection.
The selectors can inspect the complete source register set before returning the member that represents the requested register. This supports banked registers and ABI choices such as ARM frame pointer selection from CPSR.T.
- Template Parameters
-
| State | Bound register structure. |
| Value | Selected register value type. |
| Selector | Stateless function object returning a pointer into the state. A templated call operator can preserve the state's constness without separate const and mutable selector overloads. Returning only const value_type * makes the field read-only. |
| Registers | Register indexes handled by the selectors. |