34. safe_addr macro¶
The safe_addr module implements safe_addr pattern, which returns temporary address of local expression.
All functions and symbols are in “safe_addr” module, use require to get access to it.
require daslib/safe_addr
34.1. Function annotations¶
-
SafeAddrMacro
¶
This macro reports an error if safe_addr is attempted on the object, which is not local to the scope. I.e. if the object can expire while in scope, with delete, garbage collection, or on the C++ side.
34.2. Safe temporary address¶
-
safe_addr
(x: auto(T)& =const)¶
safe_addr returns T?#
argument |
argument type |
---|---|
x |
auto(T)&! |
returns temporary pointer to the given expression
-
safe_addr
(x: auto(T) const& =const)
safe_addr returns T? const#
argument |
argument type |
---|---|
x |
auto(T) const&! |
returns temporary pointer to the given expression