more tests

This commit is contained in:
Denis Blank 2015-06-08 22:44:14 +02:00 committed by Naios
parent dda1357163
commit 9602e5fa26
2 changed files with 38 additions and 2 deletions

View File

@ -2,10 +2,42 @@
#ifndef _FLUENT_HPP_ #ifndef _FLUENT_HPP_
#define _FLUENT_HPP_ #define _FLUENT_HPP_
#include <memory>
#include <utility>
#include "functional_unwrap.hpp" #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> template <typename Callback>
fluent_step& then(Callback const& callback) fluent_step& then(Callback const& callback)
{ {

View File

@ -7,6 +7,10 @@ int main(int argc, char** argv)
.then([] .then([]
{ {
})
.then([]
{
}); });
return 0; return 0;