diff options
-rw-r--r-- | paludis/fs_merger.cc | 55 | ||||
-rw-r--r-- | paludis/fs_merger.hh | 2 | ||||
-rw-r--r-- | paludis/ndbam_merger.cc | 55 | ||||
-rw-r--r-- | paludis/ndbam_merger.hh | 1 | ||||
-rw-r--r-- | paludis/repositories/e/vdb_merger.cc | 54 | ||||
-rw-r--r-- | paludis/repositories/e/vdb_merger.hh | 1 |
6 files changed, 57 insertions, 111 deletions
diff --git a/paludis/fs_merger.cc b/paludis/fs_merger.cc index 8567d1607..bbe44661c 100644 --- a/paludis/fs_merger.cc +++ b/paludis/fs_merger.cc @@ -19,6 +19,7 @@ */ #include <paludis/fs_merger.hh> +#include <paludis/util/enum_iterator.hh> #include <paludis/util/stringify.hh> #include <paludis/util/fd_holder.hh> #include <paludis/util/log.hh> @@ -1005,3 +1006,57 @@ FSMerger::do_dir_recursive(bool is_check, const FSPath & src, const FSPath & dst Merger::do_dir_recursive(is_check, src, dst); } +std::string +FSMerger::make_arrows(const FSMergerStatusFlags & flags) const +{ + std::string result(">>>"); + + for (EnumIterator<FSMergerStatusFlag> m, m_end(last_msi); m != m_end; ++m) + { + if (! flags[*m]) + continue; + + switch (*m) + { + case msi_unlinked_first: + result[0] = '<'; + continue; + + case msi_used_existing: + result[0] = '='; + continue; + + case msi_parent_rename: + result[1] = '^'; + continue; + + case msi_rename: + result[1] = '-'; + continue; + + case msi_as_hardlink: + result[1] = '&'; + continue; + + case msi_fixed_ownership: + result[2] = '~'; + continue; + + case msi_setid_bits: + result[2] = '*'; + continue; + + case msi_xattr: + result[2] = '+'; + continue; + + case last_msi: + break; + } + + throw InternalError(PALUDIS_HERE, "Unhandled MergeStatusFlag '" + stringify(static_cast<long>(*m)) + "'"); + } + + return result; +} + diff --git a/paludis/fs_merger.hh b/paludis/fs_merger.hh index 008417181..e9bde0f0c 100644 --- a/paludis/fs_merger.hh +++ b/paludis/fs_merger.hh @@ -228,6 +228,8 @@ namespace paludis ///\} + virtual std::string make_arrows(const FSMergerStatusFlags & flags) const; + public: ///\name Basic operations ///\{ diff --git a/paludis/ndbam_merger.cc b/paludis/ndbam_merger.cc index fa7528785..7eed0a2a7 100644 --- a/paludis/ndbam_merger.cc +++ b/paludis/ndbam_merger.cc @@ -27,7 +27,6 @@ #include <paludis/util/wrapped_forward_iterator.hh> #include <paludis/util/options.hh> #include <paludis/util/make_named_values.hh> -#include <paludis/util/enum_iterator.hh> #include <paludis/util/safe_ofstream.hh> #include <paludis/util/safe_ifstream.hh> #include <paludis/util/timestamp.hh> @@ -305,60 +304,6 @@ NDBAMMerger::make_config_protect_name(const FSPath & src, const FSPath & dst) return result_name; } -std::string -NDBAMMerger::make_arrows(const FSMergerStatusFlags & flags) const -{ - std::string result(">>>"); - for (EnumIterator<FSMergerStatusFlag> m, m_end(last_msi) ; - m != m_end ; ++m) - { - if (! flags[*m]) - continue; - - switch (*m) - { - case msi_unlinked_first: - result[0] = '<'; - continue; - - case msi_used_existing: - result[0] = '='; - continue; - - case msi_parent_rename: - result[1] = '^'; - continue; - - case msi_rename: - result[1] = '-'; - continue; - - case msi_as_hardlink: - result[1] = '&'; - continue; - - case msi_fixed_ownership: - result[2] = '~'; - continue; - - case msi_setid_bits: - result[2] = '*'; - continue; - - case msi_xattr: - result[2] = '+'; - continue; - - case last_msi: - break; - } - - throw InternalError(PALUDIS_HERE, "Unhandled MergeStatusFlag '" + stringify(static_cast<long>(*m)) + "'"); - } - - return result; -} - void NDBAMMerger::merge() { diff --git a/paludis/ndbam_merger.hh b/paludis/ndbam_merger.hh index 7bfa7fdd2..ddc507790 100644 --- a/paludis/ndbam_merger.hh +++ b/paludis/ndbam_merger.hh @@ -80,7 +80,6 @@ namespace paludis { private: void display_override(const std::string &) const; - std::string make_arrows(const FSMergerStatusFlags &) const; Pimp<NDBAMMerger> _imp; diff --git a/paludis/repositories/e/vdb_merger.cc b/paludis/repositories/e/vdb_merger.cc index 244c64691..9d033e395 100644 --- a/paludis/repositories/e/vdb_merger.cc +++ b/paludis/repositories/e/vdb_merger.cc @@ -31,7 +31,6 @@ #include <paludis/util/options.hh> #include <paludis/util/make_named_values.hh> #include <paludis/util/make_null_shared_ptr.hh> -#include <paludis/util/enum_iterator.hh> #include <paludis/util/timestamp.hh> #include <paludis/util/env_var_names.hh> #include <paludis/util/safe_ofstream.hh> @@ -344,56 +343,3 @@ VDBMerger::display_override(const std::string & message) const _imp->params.output_manager()->stdout_stream() << message << std::endl; } -std::string -VDBMerger::make_arrows(const FSMergerStatusFlags & flags) const -{ - std::string result(">>>"); - for (EnumIterator<FSMergerStatusFlag> m, m_end(last_msi) ; - m != m_end ; ++m) - { - if (! flags[*m]) - continue; - - switch (*m) - { - case msi_unlinked_first: - result[0] = '<'; - continue; - - case msi_used_existing: - result[0] = '='; - continue; - - case msi_parent_rename: - result[1] = '^'; - continue; - - case msi_rename: - result[1] = '-'; - continue; - - case msi_as_hardlink: - result[1] = '&'; - continue; - - case msi_fixed_ownership: - result[2] = '~'; - continue; - - case msi_setid_bits: - result[2] = '*'; - continue; - - case msi_xattr: - result[2] = '+'; - continue; - - case last_msi: - break; - } - throw InternalError(PALUDIS_HERE, "Unhandled MergeStatusFlag '" + stringify(static_cast<long>(*m)) + "'"); - } - - return result; -} - diff --git a/paludis/repositories/e/vdb_merger.hh b/paludis/repositories/e/vdb_merger.hh index 16e4c68d0..753d19fc6 100644 --- a/paludis/repositories/e/vdb_merger.hh +++ b/paludis/repositories/e/vdb_merger.hh @@ -81,7 +81,6 @@ namespace paludis { private: void display_override(const std::string &) const; - std::string make_arrows(const FSMergerStatusFlags &) const; Pimp<VDBMerger> _imp; |