20 #ifndef PALUDIS_GUARD_PALUDIS_ACTION_HH
21 #define PALUDIS_GUARD_PALUDIS_ACTION_HH 1
27 #include <paludis/output_manager-fwd.hh>
30 #include <paludis/util/visitor.hh>
34 #include <paludis/util/named_value.hh>
35 #include <paludis/util/fs_path-fwd.hh>
37 #include <paludis/util/type_list.hh>
55 typedef Name<struct name_config_protect> config_protect;
56 typedef Name<struct name_destination> destination;
57 typedef Name<struct name_errors> errors;
58 typedef Name<struct name_exclude_unmirrorable> exclude_unmirrorable;
59 typedef Name<struct name_failed_automatic_fetching> failed_automatic_fetching;
60 typedef Name<struct name_failed_integrity_checks> failed_integrity_checks;
61 typedef Name<struct name_fetch_parts> fetch_parts;
62 typedef Name<struct name_if_for_install_id> if_for_install_id;
63 typedef Name<struct name_ignore_for_unmerge> ignore_for_unmerge;
64 typedef Name<struct name_ignore_unfetched> ignore_unfetched;
65 typedef Name<struct name_is_overwrite> is_overwrite;
66 typedef Name<struct name_make_output_manager> make_output_manager;
67 typedef Name<struct name_override_contents> override_contents;
68 typedef Name<struct name_perform_uninstall> perform_uninstall;
69 typedef Name<struct name_replacing> replacing;
70 typedef Name<struct name_requires_manual_fetching> requires_manual_fetching;
71 typedef Name<struct name_safe_resume> safe_resume;
72 typedef Name<struct name_target_file> target_file;
73 typedef Name<struct name_want_phase> want_phase;
74 typedef Name<struct name_ignore_not_in_manifest> ignore_not_in_manifest;
170 const std::shared_ptr<const PackageID> &,
270 InstallAction, UninstallAction, PretendAction, ConfigAction, FetchAction,
271 InfoAction, PretendFetchAction>::Type>
286 virtual const std::string simple_name()
const PALUDIS_ATTRIBUTE((warn_unused_result)) = 0;
316 virtual const std::string simple_name() const
PALUDIS_ATTRIBUTE((warn_unused_result));
318 static const std::
string class_simple_name()
PALUDIS_ATTRIBUTE((warn_unused_result));
348 virtual const std::string simple_name() const
PALUDIS_ATTRIBUTE((warn_unused_result));
350 static const std::
string class_simple_name()
PALUDIS_ATTRIBUTE((warn_unused_result));
351 static const std::
string ignore_unfetched_flag_name()
PALUDIS_ATTRIBUTE((warn_unused_result));
380 virtual const std::string simple_name() const
PALUDIS_ATTRIBUTE((warn_unused_result));
382 static const std::
string class_simple_name()
PALUDIS_ATTRIBUTE((warn_unused_result));
451 virtual const std::string simple_name() const PALUDIS_ATTRIBUTE((warn_unused_result));
453 static const std::
string class_simple_name() PALUDIS_ATTRIBUTE((warn_unused_result));
476 ~PretendFetchAction();
484 virtual void will_fetch(
const FSPath & destination,
const unsigned long size_in_bytes) = 0;
486 virtual const std::string simple_name() const PALUDIS_ATTRIBUTE((warn_unused_result));
488 static const std::
string class_simple_name() PALUDIS_ATTRIBUTE((warn_unused_result));
543 virtual const std::string simple_name() const PALUDIS_ATTRIBUTE((warn_unused_result));
545 static const std::
string class_simple_name() PALUDIS_ATTRIBUTE((warn_unused_result));
605 virtual const std::string simple_name() const PALUDIS_ATTRIBUTE((warn_unused_result));
607 static const std::
string class_simple_name() PALUDIS_ATTRIBUTE((warn_unused_result));
625 virtual ~SupportsActionTestBase() = 0;
643 template <
typename A_>