Implements TSharedMonoVal with type ExpressionVal. Therefore, the relevant documentation is found with class ExpressionVal, which can be accessed through this type using operator->()
.
The result of combining both is an automatic pointer to a ExpressionVal that is "self-contained" in the first buffer of a MonoAllocator together with the allocator itself. The expression is deleted and all associated memory is freed when the last copy of the pointer goes out of scope.
- Note
- With the documentation of type TSharedMonoVal, two naming schemes are suggested. Here, the second scheme is used because the method Compiler::Compile will always return this encapsulated object. Expressions are shared by definition.
Definition at line 246 of file expression.hpp.
|
| Expression ()=default |
| Constructs an empty instance, hence a cleared automatic pointer.
|
|
| Expression (std::nullptr_t) noexcept |
|
| TSharedMonoVal () noexcept |
| Default Constructor. Leaves this object nulled.
|
|
| TSharedMonoVal (const TSharedMonoVal &other) noexcept |
|
| TSharedMonoVal (HeapAllocator &allocator, size_t initialBufferSizeInKB, unsigned int bufferGrowthInPercent) |
|
| TSharedMonoVal (size_t initialBufferSizeInKB, unsigned int bufferGrowthInPercent) |
|
| TSharedMonoVal (std::nullptr_t) noexcept |
|
| TSharedMonoVal (TSharedMonoVal &&other) noexcept |
|
| ~TSharedMonoVal () |
|
void | Acquire (const CallerInfo &ci) const noexcept |
|
void | AcquireRecursive (const CallerInfo &ci) const noexcept |
|
void | AcquireShared (const CallerInfo &ci) const noexcept |
|
void | ConstructT (TArgs &&... args) |
|
const ExpressionVal * | Get () const noexcept |
|
ExpressionVal * | Get () noexcept |
|
AllocatorType & | GetAllocator () noexcept |
|
void & | GetLock () const noexcept |
|
bool | IsNulled () const noexcept |
|
| operator bool () const noexcept |
|
bool | operator!= (std::nullptr_t) const noexcept |
|
const ExpressionVal & | operator* () const noexcept |
|
ExpressionVal & | operator* () noexcept |
|
const ExpressionVal * | operator-> () const noexcept |
|
ExpressionVal * | operator-> () noexcept |
|
TSharedMonoVal & | operator= (const TSharedMonoVal &other) noexcept |
|
void | operator= (std::nullptr_t) |
| Assignment of nullptr . Same as SetNulled.
|
|
TSharedMonoVal & | operator= (TSharedMonoVal &&other) noexcept |
|
bool | operator== (std::nullptr_t) const noexcept |
|
void | Release (const CallerInfo &ci) const noexcept |
|
void | ReleaseRecursive (const CallerInfo &ci) const noexcept |
|
void | ReleaseShared (const CallerInfo &ci) const noexcept |
|
void | Reset (TArgs &&... args) |
|
const ExpressionVal & | Self () const noexcept |
|
ExpressionVal & | Self () noexcept |
|
void | SetNulled () noexcept |
|
bool | TryAcquire (const CallerInfo &ci) const noexcept |
|
bool | TryAcquireShared (const CallerInfo &ci) const noexcept |
|
bool | TryAcquireSharedTimed (const Ticks &pointInTime, const CallerInfo &ci) const noexcept |
|
bool | TryAcquireSharedTimed (const Ticks::Duration &waitDuration, const CallerInfo &ci) const noexcept |
|
bool | TryAcquireSharedTimed (const Ticks::Duration::TDuration &waitDuration, const CallerInfo &ci) const noexcept |
|
bool | TryAcquireSharedTimed (const Ticks::TTimePoint &pointInTime, const CallerInfo &ci) const noexcept |
|
bool | TryAcquireTimed (const Ticks &pointInTime, const CallerInfo &ci) const noexcept |
|
bool | TryAcquireTimed (const Ticks::Duration &waitDuration, const CallerInfo &ci) const noexcept |
|
bool | TryAcquireTimed (const Ticks::Duration::TDuration &waitDuration, const CallerInfo &ci) const noexcept |
|
bool | TryAcquireTimed (const Ticks::TTimePoint &pointInTime, const CallerInfo &ci) const noexcept |
|
bool | Unique () const noexcept |
|
unsigned int | UseCount () const noexcept |
|