diff --git a/Functor/CMakeLists.txt b/Functor/CMakeLists.txt deleted file mode 100644 index b99f5ca..0000000 --- a/Functor/CMakeLists.txt +++ /dev/null @@ -1,21 +0,0 @@ -cmake_minimum_required(VERSION 3.20) - -project( - Functor - VERSION 0.1.0 - LANGUAGES CXX) - -list(APPEND CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/../cmake") - -include(ExportCompileCommands) -include(sccache) - -add_executable(Functor main.cpp) - -target_compile_features(Functor PUBLIC cxx_std_20) - -set_target_properties( - Functor - PROPERTIES ARCHIVE_OUTPUT_DIRECTORY "${PROJECT_SOURCE_DIR}/bin" - RUNTIME_OUTPUT_DIRECTORY "${PROJECT_SOURCE_DIR}/bin" - RUNTIME_OUTPUT_DIRECTORY "${PROJECT_SOURCE_DIR}/bin") diff --git a/Functor/bootstrap.sh b/Functor/bootstrap.sh deleted file mode 120000 index 796ed13..0000000 --- a/Functor/bootstrap.sh +++ /dev/null @@ -1 +0,0 @@ -../scripts/bootstrap.sh \ No newline at end of file diff --git a/Functor/build.sh b/Functor/build.sh deleted file mode 120000 index 0eff50d..0000000 --- a/Functor/build.sh +++ /dev/null @@ -1 +0,0 @@ -../scripts/build.sh \ No newline at end of file diff --git a/Functor/main.cpp b/Functor/main.cpp deleted file mode 100644 index c771ff8..0000000 --- a/Functor/main.cpp +++ /dev/null @@ -1,39 +0,0 @@ -#include -#include -#include - -class join_strings_functor { -private: - std::string separator_ = " "; - -public: - join_strings_functor() = default; - join_strings_functor(std::string_view separator) : separator_(separator) {} - - std::string operator()(const std::string &left, - const std::string &right) const { - return left + separator_ + right; - } -}; - -int main(int argc, char *argv[]) { - - std::cout << "Functor" << std::endl; - - std::vector names = {"Albert", "Bernd", "Cora", - "Dave", "Emil", "Frank"}; - - auto space_joined_string = - std::accumulate(std::next(names.begin()), names.end(), names.front(), - join_strings_functor()); - - std::cout << "Space-joined string: " << space_joined_string << std::endl; - - auto comma_joined_string = - std::accumulate(std::next(names.begin()), names.end(), names.front(), - join_strings_functor(", ")); - - std::cout << "Comma-joined string: " << comma_joined_string << std::endl; - - return EXIT_SUCCESS; -}