JAPAn
Just Another Parity Analyzer
Loading...
Searching...
No Matches
QwConcepts.h File Reference
#include <type_traits>
+ Include dependency graph for QwConcepts.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  QwArchitecture
 

Macros

#define QW_CONCEPTS_AVAILABLE   0
 
#define VALIDATE_DATA_ELEMENT_PATTERN(ClassName)
 Helper macro to validate architectural compliance in concrete classes.
 
#define VALIDATE_DATA_HANDLER_PATTERN(ClassName)
 Helper macro to validate data handler compliance.
 
#define VALIDATE_SUBSYSTEM_PATTERN(ClassName)
 Helper macro to validate unified subsystem compliance.
 

Macro Definition Documentation

◆ QW_CONCEPTS_AVAILABLE

#define QW_CONCEPTS_AVAILABLE   0

Definition at line 42 of file QwConcepts.h.

◆ VALIDATE_DATA_ELEMENT_PATTERN

#define VALIDATE_DATA_ELEMENT_PATTERN ( ClassName)
Value:
/* C++17 mode: Architectural patterns documented but validation disabled */ \
static_assert(true, #ClassName " architectural requirements documented (upgrade to C++20 for validation)");

Helper macro to validate architectural compliance in concrete classes.

Usage: VALIDATE_DATA_ELEMENT_PATTERN(MyConcreteClass);

In C++20: Performs full concept validation for all required methods In C++17: Always passes but documents architectural requirements

Definition at line 390 of file QwConcepts.h.

390#define VALIDATE_DATA_ELEMENT_PATTERN(ClassName) \
391 /* C++17 mode: Architectural patterns documented but validation disabled */ \
392 static_assert(true, #ClassName " architectural requirements documented (upgrade to C++20 for validation)");

◆ VALIDATE_DATA_HANDLER_PATTERN

#define VALIDATE_DATA_HANDLER_PATTERN ( ClassName)
Value:
/* C++17 mode: Data handler patterns documented but validation disabled */ \
static_assert(true, #ClassName " data handler requirements documented (upgrade to C++20 for validation)");

Helper macro to validate data handler compliance.

Data handlers have different architectural requirements than data elements. They don't need the Dual-Operator Pattern since they handle data processing rather than data storage and arithmetic operations.

Definition at line 408 of file QwConcepts.h.

408#define VALIDATE_DATA_HANDLER_PATTERN(ClassName) \
409 /* C++17 mode: Data handler patterns documented but validation disabled */ \
410 static_assert(true, #ClassName " data handler requirements documented (upgrade to C++20 for validation)");

◆ VALIDATE_SUBSYSTEM_PATTERN

#define VALIDATE_SUBSYSTEM_PATTERN ( ClassName)
Value:
/* C++17 mode: Subsystem patterns documented but validation disabled */ \
static_assert(true, #ClassName " subsystem requirements documented (upgrade to C++20 for validation)");

Helper macro to validate unified subsystem compliance.

Definition at line 423 of file QwConcepts.h.

423#define VALIDATE_SUBSYSTEM_PATTERN(ClassName) \
424 /* C++17 mode: Subsystem patterns documented but validation disabled */ \
425 static_assert(true, #ClassName " subsystem requirements documented (upgrade to C++20 for validation)");