Checks if the stack is empty If the combining is in process the function waits while combining done. */
| 276 | If the combining is in process the function waits while combining done. |
| 277 | */ |
| 278 | bool empty() |
| 279 | { |
| 280 | auto pRec = m_FlatCombining.acquire_record(); |
| 281 | |
| 282 | constexpr_if ( c_bEliminationEnabled ) |
| 283 | m_FlatCombining.batch_combine( op_empty, pRec, *this ); |
| 284 | else |
| 285 | m_FlatCombining.combine( op_empty, pRec, *this ); |
| 286 | |
| 287 | assert( pRec->is_done()); |
| 288 | m_FlatCombining.release_record( pRec ); |
| 289 | return pRec->bEmpty; |
| 290 | } |
| 291 | |
| 292 | /// Internal statistics |
| 293 | stat const& statistics() const |
nothing calls this directly
no test coverage detected