dep_list_args_group.hh

00001 /* vim: set sw=4 sts=4 et foldmethod=syntax : */
00002 
00003 /*
00004  * Copyright (c) 2006, 2007, 2009 Ciaran McCreesh
00005  * Copyright (c) 2007 David Leverton
00006  *
00007  * This file is part of the Paludis package manager. Paludis is free software;
00008  * you can redistribute it and/or modify it under the terms of the GNU General
00009  * Public License version 2, as published by the Free Software Foundation.
00010  *
00011  * Paludis is distributed in the hope that it will be useful, but WITHOUT ANY
00012  * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
00013  * FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more
00014  * details.
00015  *
00016  * You should have received a copy of the GNU General Public License along with
00017  * this program; if not, write to the Free Software Foundation, Inc., 59 Temple
00018  * Place, Suite 330, Boston, MA  02111-1307  USA
00019  */
00020 
00021 #ifndef PALUDIS_GUARD_SRC_COMMON_ARGS_DEP_LIST_ARGS_HH
00022 #define PALUDIS_GUARD_SRC_COMMON_ARGS_DEP_LIST_ARGS_HH 1
00023 
00024 #include <paludis/args/args.hh>
00025 #include <paludis/args/deps_option_arg.hh>
00026 #include <paludis/dep_list.hh>
00027 #include <paludis/install_task.hh>
00028 
00029 namespace paludis
00030 {
00031     namespace args
00032     {
00033         /**
00034          * The standard dep command line arguments.
00035          *
00036          * \since 0.26
00037          * \ingroup g_args
00038          * \nosubgrouping
00039          */
00040         class PALUDIS_VISIBLE DepListArgsGroup : public ArgsGroup
00041         {
00042             public:
00043                 /// Constructor.
00044                 DepListArgsGroup(ArgsSection *);
00045 
00046                 /// Destructor
00047                 ~DepListArgsGroup();
00048 
00049                 /// \name DepList behaviour arguments
00050                 /// {
00051 
00052                 paludis::args::EnumArg dl_reinstall;
00053                 paludis::args::EnumArg dl_reinstall_scm;
00054                 paludis::args::EnumArg dl_reinstall_targets;
00055                 paludis::args::EnumArg dl_upgrade;
00056                 paludis::args::EnumArg dl_new_slots;
00057                 paludis::args::EnumArg dl_downgrade;
00058 
00059                 paludis::args::DepsOptionArg dl_deps_default;
00060 
00061                 paludis::args::DepsOptionArg dl_installed_deps_pre;
00062                 paludis::args::DepsOptionArg dl_installed_deps_runtime;
00063                 paludis::args::DepsOptionArg dl_installed_deps_post;
00064 
00065                 paludis::args::DepsOptionArg dl_uninstalled_deps_pre;
00066                 paludis::args::DepsOptionArg dl_uninstalled_deps_runtime;
00067                 paludis::args::DepsOptionArg dl_uninstalled_deps_post;
00068                 paludis::args::DepsOptionArg dl_uninstalled_deps_suggested;
00069 
00070                 paludis::args::EnumArg dl_suggested;
00071                 paludis::args::EnumArg dl_circular;
00072                 paludis::args::EnumArg dl_blocks;
00073                 paludis::args::StringSetArg dl_override_masks;
00074 
00075                 paludis::args::EnumArg dl_fall_back;
00076 
00077                 /// }
00078 
00079                 /**
00080                  * Populate a DepListOptions from our values.
00081                  */
00082                 void populate_dep_list_options(const paludis::Environment *, DepListOptions &) const;
00083 
00084                 /**
00085                  * Populate an InstallTask from our values.
00086                  */
00087                 void populate_install_task(const paludis::Environment *, InstallTask &) const;
00088 
00089                 /**
00090                  * Fetch a fragment for Environment::paludis_command for our
00091                  * values.
00092                  */
00093                 std::string paludis_command_fragment() const;
00094 
00095                 /**
00096                  * Fetch a fragment for a resume command for our values.
00097                  */
00098                 std::string resume_command_fragment(const InstallTask &) const;
00099         };
00100     }
00101 }
00102 
00103 #endif
00104 

Generated on Mon Sep 21 10:36:08 2009 for paludis by  doxygen 1.5.4