diff --git a/inc/generator.hpp b/inc/generator.hpp index 32eee9c..fb38854 100644 --- a/inc/generator.hpp +++ b/inc/generator.hpp @@ -250,6 +250,33 @@ template class generator { * \param[in] p The promise to use. */ generator(promise_type &p) : _h{handle_type::from_promise(p)} {} + + /** + * \brief Copy-constructing generators results in undefined behaviour. + */ + generator(const generator &other) = delete; + /** + * \brief Moves the data from the other generator into this one. + * \param[in,out] other The other generator. + */ + generator(generator &&other) = default; + + /** + * \brief Copy-assigning generators results in undefined behaviour. + */ + generator &operator=(const generator &other) = delete; + /** + * \brief Moves the data from the other generator into this one. + * \param[in,out] other The other generator. + * \returns A reference to this generator. + */ + generator &operator=(generator &&other) = default; + + /** + * \brief Cleans up this generator's resources. + */ + ~generator() = default; + /** * \brief Converts this generator its handle. * \returns The handle for this generator. diff --git a/test/Makefile b/test/Makefile index 4f1388c..eeeab60 100644 --- a/test/Makefile +++ b/test/Makefile @@ -14,7 +14,7 @@ dirs: $(BIND)/generator: $(OBJD)/generator/test_generator.o $(CC) $< $(LDXTRA) $(LDARGS) -o $@ - $(BIND)/generator + $(BIND)/generator --gtest_output="xml:$(BIND)/" $(OBJD)/%.o: $(SRCD)/%.cpp Makefile $(CC) $(CXXARGS) $(CXXXTRA) $< -o $@