mirror of
https://github.com/Naios/continuable.git
synced 2025-12-08 01:36:46 +08:00
more tests
This commit is contained in:
parent
6bef0fd271
commit
517c9d14f9
@ -2,10 +2,42 @@
|
||||
#ifndef _FLUENT_HPP_
|
||||
#define _FLUENT_HPP_
|
||||
|
||||
#include <memory>
|
||||
#include <utility>
|
||||
|
||||
#include "functional_unwrap.hpp"
|
||||
|
||||
struct fluent_step
|
||||
class fluent_step
|
||||
{
|
||||
bool released;
|
||||
|
||||
void release()
|
||||
{
|
||||
int i = 0;
|
||||
}
|
||||
|
||||
public:
|
||||
fluent_step() : released(false) { }
|
||||
|
||||
~fluent_step()
|
||||
{
|
||||
if (!released)
|
||||
release();
|
||||
}
|
||||
|
||||
fluent_step(fluent_step const&) = delete;
|
||||
fluent_step(fluent_step&& right) : released(false)
|
||||
{
|
||||
right.released = true;
|
||||
}
|
||||
|
||||
fluent_step& operator= (fluent_step const&) = delete;
|
||||
fluent_step& operator= (fluent_step&& right)
|
||||
{
|
||||
released = false;
|
||||
right.released = true;
|
||||
}
|
||||
|
||||
template <typename Callback>
|
||||
fluent_step& then(Callback const& callback)
|
||||
{
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user