CoreComponents 3.0.0
A Modern C++ Toolkit
|
A C/C++ translation unit. More...
#include <cc/build/Unit>
Public Types | |
enum class | Type { Regular , Module , SystemModule } |
Public Member Functions | |
Unit (Type type, const String &source, const String &target="", bool dirty=false) | |
Type | type () const |
String | source () const |
String | target () const |
bool | dirty () const |
![]() | |
Object ()=default | |
Create a null object. | |
operator bool () const | |
Check if this is a non-null object. | |
bool | isNull () const |
Check if this is a null object. | |
template<class T > | |
bool | is () const |
Check if this object is of type T. | |
template<class T > | |
T | as () const |
Cast this object to type T. | |
bool | isWeak () const |
Check if the underlying object reference is weak. | |
bool | operator== (const Object &other) const |
Equality operator. | |
std::strong_ordering | operator<=> (const Object &other) const |
Ordering operator. | |
long | useCount () const |
Reference count. | |
Additional Inherited Members | |
![]() | |
template<class T > | |
T | weak () const |
template<class T > | |
void | initOnce () |
Create the object state when called the first time. | |
template<class T > | |
void | initOncePerThread () |
Create a distinct object state for each thread when called the first time in that thread. | |
Object (State *newState) | |
Initialize object with newState. | |
Object (State *state, Alias) | |
Object (State *state, Weak) | |
Object & | operator= (std::nullptr_t) |
![]() | |
template<class T > | |
static T | alias (const State *state) |
Create an alias object for the given state. | |
template<class T > | |
static T | weak (const State *state) |
![]() | |
Handle< State > | me |
Internal object state | |
A C/C++ translation unit.