ModAssy 1.5.1

Licenza: Gratuito ‎Dimensioni del file: 1.02 MB
‎Valutazione utenti: 3.0/5 - ‎1 ‎Voti

Circa ModAssy

Si tratta di una libreria C++ portatile avanzata con 80 varianti della macro ASSERT, per aggiungere espressioni, livelli e azioni facoltative. 48 sono modulari perché possono anche utilizzare Rich Boolies, consentendo molte più combinazioni rispetto alle macro ASSERT non modulari. È molto flessibile perché consente di creare logger personalizzati e visualizzatori di asserzioni, ma è anche possibile utilizzare quelli forniti per Windows, wxWidgets o applicazioni console. I logger e i visualizzatori mostrano informazioni aggiuntive, come la data e l'ora, l'ID del thread, la directory di lavoro corrente e così via, ed è possibile aggiungere oggetti infoprovider a ModAssy, per fornire informazioni personalizzate simili. Ha otto asserzioni di base, ognuna con 16 varianti, aggiungendo quattro suffissi che aggiungono funzionalità. È molto affidabile e portatile, in quanto è stato testato con cinque diversi compilatori (VC++ 6.0, .NET 2003, .NET 2005, gcc su Windows e Linux), con quasi tutti gli avvisi abilitati. I Rich Boolies possono eseguire tutti i tipi di controlli e generare informazioni elaborate: * Relazioni tra due oggetti: rbEQUAL, rbLESS, ... * Confronti bit per bit: rbEQUAL_BITWISE, rbBITS_ON, rbBITS_OFF, ... * Controllo dei tipi (con RTTI): rbEQUAL_TYPES, rbHAS_TYPE, ... * Lavorare su gamme e contenitori: rbIN_RANGE, rbIN_RANGES, rbIN_CONTAINER, rbIN_CONTAINERS, ... Questi hanno un argomento extra che dice che tipo di controllo fare, ad esempio Ordinato, Confronta, Ha, Unico, ... * Confronti di stringhe: rbSTRING, rbSTRING_BEGINS_WITH, rbSTRING_ENDS_WITH, rbSTRING_CONTAINS. Questi hanno un argomento in più che dice che tipo di controllo fare, ad esempio con problemi di maiuscole e minuscole o meno. * Espressioni logiche: rbAND, rbOR, rbXOR. Questi possono avere Rich Boolies o semplici espressioni booleane come argomenti. * Eccezioni: rbEXCEPTION accetta un'eccezione come argomento e utilizza le informazioni in esso contenute.