From b1b5570170381eab3ed70116c50f325386727fc3 Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Fri, 10 Apr 2020 14:35:36 +0200 Subject: Add process_path(effect) constructor --- libbutl/process.ixx | 8 ++++++++ libbutl/process.mxx | 7 +++++-- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/libbutl/process.ixx b/libbutl/process.ixx index ea74e85..07c8bac 100644 --- a/libbutl/process.ixx +++ b/libbutl/process.ixx @@ -13,6 +13,14 @@ namespace butl } inline process_path:: + process_path (path e) + : effect (std::move (e)), + args0_ (nullptr) + { + initial = effect.string ().c_str (); + } + + inline process_path:: process_path (const char* i, path&& r, path&& e) : initial (i), recall (std::move (r)), diff --git a/libbutl/process.mxx b/libbutl/process.mxx index b8c6054..a03e40f 100644 --- a/libbutl/process.mxx +++ b/libbutl/process.mxx @@ -128,6 +128,11 @@ LIBBUTL_MODEXPORT namespace butl void clear_recall (); + explicit + process_path (path effect); + process_path (const char* initial, path&& recall, path&& effect); + process_path () = default; + // Moveable-only type. // process_path (process_path&&); @@ -136,8 +141,6 @@ LIBBUTL_MODEXPORT namespace butl process_path (const process_path&) = delete; process_path& operator= (const process_path&) = delete; - process_path () = default; - process_path (const char* i, path&& r, path&& e); ~process_path (); // Manual copying. Should not use args[0] RAII. See path_search() for the -- cgit v1.1