aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAvatar Ciaran McCreesh <ciaran.mccreesh@googlemail.com> 2007-09-27 14:53:47 +0000
committerAvatar Ciaran McCreesh <ciaran.mccreesh@googlemail.com> 2007-09-27 14:53:47 +0000
commit069308ce630fb41cb8435120926f50259b5d103f (patch)
tree0747138db232a7377ce72c5a54bdd5f8fcfbf8c6
parent1b07de4ddd7d54b1aff56d9c48fc43596554d482 (diff)
downloadpaludis-069308ce630fb41cb8435120926f50259b5d103f.tar.gz
paludis-069308ce630fb41cb8435120926f50259b5d103f.tar.xz
Make dep_spec-fwd a proper fwd.
-rw-r--r--paludis/dep_list/condition_tracker.hh2
-rw-r--r--paludis/dep_list/dep_list-fwd.hh2
-rw-r--r--paludis/dep_spec-fwd.hh192
-rw-r--r--paludis/dep_spec.hh183
-rw-r--r--paludis/dep_spec_flattener.hh2
-rw-r--r--paludis/dep_tag.hh2
-rw-r--r--paludis/environment.hh2
-rw-r--r--paludis/match_package.hh2
-rw-r--r--paludis/metadata_key.hh2
-rw-r--r--paludis/repositories/cran/cran_dep_parser.hh2
-rw-r--r--paludis/repositories/e/check_fetched_files_visitor.hh2
-rw-r--r--paludis/repositories/e/e_repository_profile.hh2
-rw-r--r--paludis/repositories/e/fetch_visitor.hh2
-rw-r--r--paludis/repository.hh2
14 files changed, 204 insertions, 195 deletions
diff --git a/paludis/dep_list/condition_tracker.hh b/paludis/dep_list/condition_tracker.hh
index 58b4065..8f9fece 100644
--- a/paludis/dep_list/condition_tracker.hh
+++ b/paludis/dep_list/condition_tracker.hh
@@ -23,7 +23,7 @@
#include <paludis/util/tr1_memory.hh>
#include <paludis/util/tr1_functional.hh>
#include <paludis/util/visitor.hh>
-#include <paludis/dep_spec-fwd.hh>
+#include <paludis/dep_spec.hh>
namespace paludis
{
diff --git a/paludis/dep_list/dep_list-fwd.hh b/paludis/dep_list/dep_list-fwd.hh
index 7647ce9..038b025 100644
--- a/paludis/dep_list/dep_list-fwd.hh
+++ b/paludis/dep_list/dep_list-fwd.hh
@@ -22,7 +22,7 @@
#include <paludis/util/tr1_memory.hh>
#include <paludis/repository-fwd.hh>
-#include <paludis/dep_spec-fwd.hh>
+#include <paludis/dep_spec.hh>
#include <paludis/package_id-fwd.hh>
#include <paludis/environment-fwd.hh>
diff --git a/paludis/dep_spec-fwd.hh b/paludis/dep_spec-fwd.hh
index 6e0fea2..d762a7e 100644
--- a/paludis/dep_spec-fwd.hh
+++ b/paludis/dep_spec-fwd.hh
@@ -42,6 +42,15 @@ namespace paludis
typedef LabelsDepSpec<URILabelVisitorTypes> URILabelDepSpec;
typedef LabelsDepSpec<DependencyLabelVisitorTypes> DependencyLabelDepSpec;
+ struct GenericSpecTree;
+ struct LicenseSpecTree;
+ struct URISpecTree;
+ struct FlattenableSpecTree;
+ struct ProvideSpecTree;
+ struct RestrictSpecTree;
+ struct DependencySpecTree;
+ struct SetSpecTree;
+
#include <paludis/dep_spec-se.hh>
/**
@@ -94,189 +103,6 @@ namespace paludis
* \ingroup grpdepspecs
*/
std::ostream & operator<< (std::ostream &, const UseDepSpec &) PALUDIS_VISIBLE;
-
- /**
- * A generic DepSpec heirarchy.
- *
- * \ingroup grpdepspecs
- */
- struct GenericSpecTree :
- VisitorTypes<
- GenericSpecTree,
- DepSpec,
- TreeLeaf<GenericSpecTree, PlainTextDepSpec>,
- TreeLeaf<GenericSpecTree, URIDepSpec>,
- TreeLeaf<GenericSpecTree, PackageDepSpec>,
- TreeLeaf<GenericSpecTree, BlockDepSpec>,
- TreeLeaf<GenericSpecTree, LabelsDepSpec<URILabelVisitorTypes> >,
- TreeLeaf<GenericSpecTree, LabelsDepSpec<DependencyLabelVisitorTypes> >,
- ConstTreeSequence<GenericSpecTree, AllDepSpec>,
- ConstTreeSequence<GenericSpecTree, AnyDepSpec>,
- ConstTreeSequence<GenericSpecTree, UseDepSpec>
- >
- {
- typedef Formatter<
- UseDepSpec,
- PlainTextDepSpec,
- URIDepSpec,
- PackageDepSpec,
- BlockDepSpec,
- LabelsDepSpec<URILabelVisitorTypes>,
- LabelsDepSpec<DependencyLabelVisitorTypes>
- > Formatter;
- };
-
- /**
- * A DepSpec heirarchy containing things meaningful for licenses.
- *
- * \ingroup grpdepspecs
- */
- struct LicenseSpecTree :
- VisitorTypes<
- LicenseSpecTree,
- DepSpec,
- TreeLeaf<LicenseSpecTree, PlainTextDepSpec>,
- ConstTreeSequence<LicenseSpecTree, AllDepSpec>,
- ConstTreeSequence<LicenseSpecTree, AnyDepSpec>,
- ConstTreeSequence<LicenseSpecTree, UseDepSpec>
- >
- {
- typedef Formatter<
- UseDepSpec,
- PlainTextDepSpec
- > Formatter;
- };
-
- /**
- * A DepSpec heirarchy containing things meaningful for URIs.
- *
- * \ingroup grpdepspecs
- */
- struct URISpecTree :
- VisitorTypes<
- URISpecTree,
- DepSpec,
- TreeLeaf<URISpecTree, URIDepSpec>,
- TreeLeaf<URISpecTree, LabelsDepSpec<URILabelVisitorTypes> >,
- ConstTreeSequence<URISpecTree, AllDepSpec>,
- ConstTreeSequence<URISpecTree, UseDepSpec>
- >
- {
- typedef Formatter<
- UseDepSpec,
- URIDepSpec,
- LabelsDepSpec<URILabelVisitorTypes>
- > Formatter;
- };
-
- /**
- * A DepSpec heirarchy containing things that can be flattened.
- *
- * \ingroup grpdepspecs
- */
- struct FlattenableSpecTree :
- VisitorTypes<
- FlattenableSpecTree,
- DepSpec,
- TreeLeaf<FlattenableSpecTree, PlainTextDepSpec>,
- TreeLeaf<FlattenableSpecTree, URIDepSpec>,
- TreeLeaf<FlattenableSpecTree, PackageDepSpec>,
- TreeLeaf<FlattenableSpecTree, BlockDepSpec>,
- ConstTreeSequence<FlattenableSpecTree, AllDepSpec>,
- ConstTreeSequence<FlattenableSpecTree, UseDepSpec>
- >
- {
- typedef Formatter<
- UseDepSpec,
- PlainTextDepSpec,
- URIDepSpec,
- PackageDepSpec,
- BlockDepSpec
- > Formatter;
- };
-
- /**
- * A DepSpec heirarchy containing things meaningful for provides.
- *
- * \ingroup grpdepspecs
- */
- struct ProvideSpecTree :
- VisitorTypes<
- ProvideSpecTree,
- DepSpec,
- TreeLeaf<ProvideSpecTree, PackageDepSpec>,
- ConstTreeSequence<ProvideSpecTree, AllDepSpec>,
- ConstTreeSequence<ProvideSpecTree, UseDepSpec>
- >
- {
- typedef Formatter<
- UseDepSpec,
- PackageDepSpec
- > Formatter;
- };
-
- /**
- * A DepSpec heirarchy containing things meaningful for restricts.
- *
- * \ingroup grpdepspecs
- */
- struct RestrictSpecTree :
- VisitorTypes<
- RestrictSpecTree,
- DepSpec,
- TreeLeaf<RestrictSpecTree, PlainTextDepSpec>,
- ConstTreeSequence<RestrictSpecTree, AllDepSpec>,
- ConstTreeSequence<RestrictSpecTree, UseDepSpec>
- >
- {
- typedef Formatter<
- UseDepSpec,
- PlainTextDepSpec
- > Formatter;
- };
-
- /**
- * A DepSpec heirarchy containing things meaningful for dependencies.
- *
- * \ingroup grpdepspecs
- */
- struct DependencySpecTree :
- VisitorTypes<
- DependencySpecTree,
- DepSpec,
- TreeLeaf<DependencySpecTree, PackageDepSpec>,
- TreeLeaf<DependencySpecTree, BlockDepSpec>,
- TreeLeaf<DependencySpecTree, LabelsDepSpec<DependencyLabelVisitorTypes> >,
- ConstTreeSequence<DependencySpecTree, AllDepSpec>,
- ConstTreeSequence<DependencySpecTree, AnyDepSpec>,
- ConstTreeSequence<DependencySpecTree, UseDepSpec>
- >
- {
- typedef Formatter<
- UseDepSpec,
- PackageDepSpec,
- BlockDepSpec,
- LabelsDepSpec<DependencyLabelVisitorTypes>
- > Formatter;
- };
-
- /**
- * A DepSpec heirarchy containing things meaningful for sets.
- *
- * \ingroup grpdepspecs
- */
- struct SetSpecTree :
- VisitorTypes<
- SetSpecTree,
- DepSpec,
- TreeLeaf<SetSpecTree, PackageDepSpec>,
- ConstTreeSequence<SetSpecTree, AllDepSpec>
- >
- {
- typedef Formatter<
- PackageDepSpec
- > Formatter;
- };
}
#endif
diff --git a/paludis/dep_spec.hh b/paludis/dep_spec.hh
index 634c1d1..ba7a902 100644
--- a/paludis/dep_spec.hh
+++ b/paludis/dep_spec.hh
@@ -46,6 +46,189 @@
namespace paludis
{
/**
+ * A generic DepSpec heirarchy.
+ *
+ * \ingroup grpdepspecs
+ */
+ struct GenericSpecTree :
+ VisitorTypes<
+ GenericSpecTree,
+ DepSpec,
+ TreeLeaf<GenericSpecTree, PlainTextDepSpec>,
+ TreeLeaf<GenericSpecTree, URIDepSpec>,
+ TreeLeaf<GenericSpecTree, PackageDepSpec>,
+ TreeLeaf<GenericSpecTree, BlockDepSpec>,
+ TreeLeaf<GenericSpecTree, LabelsDepSpec<URILabelVisitorTypes> >,
+ TreeLeaf<GenericSpecTree, LabelsDepSpec<DependencyLabelVisitorTypes> >,
+ ConstTreeSequence<GenericSpecTree, AllDepSpec>,
+ ConstTreeSequence<GenericSpecTree, AnyDepSpec>,
+ ConstTreeSequence<GenericSpecTree, UseDepSpec>
+ >
+ {
+ typedef Formatter<
+ UseDepSpec,
+ PlainTextDepSpec,
+ URIDepSpec,
+ PackageDepSpec,
+ BlockDepSpec,
+ LabelsDepSpec<URILabelVisitorTypes>,
+ LabelsDepSpec<DependencyLabelVisitorTypes>
+ > Formatter;
+ };
+
+ /**
+ * A DepSpec heirarchy containing things meaningful for licenses.
+ *
+ * \ingroup grpdepspecs
+ */
+ struct LicenseSpecTree :
+ VisitorTypes<
+ LicenseSpecTree,
+ DepSpec,
+ TreeLeaf<LicenseSpecTree, PlainTextDepSpec>,
+ ConstTreeSequence<LicenseSpecTree, AllDepSpec>,
+ ConstTreeSequence<LicenseSpecTree, AnyDepSpec>,
+ ConstTreeSequence<LicenseSpecTree, UseDepSpec>
+ >
+ {
+ typedef Formatter<
+ UseDepSpec,
+ PlainTextDepSpec
+ > Formatter;
+ };
+
+ /**
+ * A DepSpec heirarchy containing things meaningful for URIs.
+ *
+ * \ingroup grpdepspecs
+ */
+ struct URISpecTree :
+ VisitorTypes<
+ URISpecTree,
+ DepSpec,
+ TreeLeaf<URISpecTree, URIDepSpec>,
+ TreeLeaf<URISpecTree, LabelsDepSpec<URILabelVisitorTypes> >,
+ ConstTreeSequence<URISpecTree, AllDepSpec>,
+ ConstTreeSequence<URISpecTree, UseDepSpec>
+ >
+ {
+ typedef Formatter<
+ UseDepSpec,
+ URIDepSpec,
+ LabelsDepSpec<URILabelVisitorTypes>
+ > Formatter;
+ };
+
+ /**
+ * A DepSpec heirarchy containing things that can be flattened.
+ *
+ * \ingroup grpdepspecs
+ */
+ struct FlattenableSpecTree :
+ VisitorTypes<
+ FlattenableSpecTree,
+ DepSpec,
+ TreeLeaf<FlattenableSpecTree, PlainTextDepSpec>,
+ TreeLeaf<FlattenableSpecTree, URIDepSpec>,
+ TreeLeaf<FlattenableSpecTree, PackageDepSpec>,
+ TreeLeaf<FlattenableSpecTree, BlockDepSpec>,
+ ConstTreeSequence<FlattenableSpecTree, AllDepSpec>,
+ ConstTreeSequence<FlattenableSpecTree, UseDepSpec>
+ >
+ {
+ typedef Formatter<
+ UseDepSpec,
+ PlainTextDepSpec,
+ URIDepSpec,
+ PackageDepSpec,
+ BlockDepSpec
+ > Formatter;
+ };
+
+ /**
+ * A DepSpec heirarchy containing things meaningful for provides.
+ *
+ * \ingroup grpdepspecs
+ */
+ struct ProvideSpecTree :
+ VisitorTypes<
+ ProvideSpecTree,
+ DepSpec,
+ TreeLeaf<ProvideSpecTree, PackageDepSpec>,
+ ConstTreeSequence<ProvideSpecTree, AllDepSpec>,
+ ConstTreeSequence<ProvideSpecTree, UseDepSpec>
+ >
+ {
+ typedef Formatter<
+ UseDepSpec,
+ PackageDepSpec
+ > Formatter;
+ };
+
+ /**
+ * A DepSpec heirarchy containing things meaningful for restricts.
+ *
+ * \ingroup grpdepspecs
+ */
+ struct RestrictSpecTree :
+ VisitorTypes<
+ RestrictSpecTree,
+ DepSpec,
+ TreeLeaf<RestrictSpecTree, PlainTextDepSpec>,
+ ConstTreeSequence<RestrictSpecTree, AllDepSpec>,
+ ConstTreeSequence<RestrictSpecTree, UseDepSpec>
+ >
+ {
+ typedef Formatter<
+ UseDepSpec,
+ PlainTextDepSpec
+ > Formatter;
+ };
+
+ /**
+ * A DepSpec heirarchy containing things meaningful for dependencies.
+ *
+ * \ingroup grpdepspecs
+ */
+ struct DependencySpecTree :
+ VisitorTypes<
+ DependencySpecTree,
+ DepSpec,
+ TreeLeaf<DependencySpecTree, PackageDepSpec>,
+ TreeLeaf<DependencySpecTree, BlockDepSpec>,
+ TreeLeaf<DependencySpecTree, LabelsDepSpec<DependencyLabelVisitorTypes> >,
+ ConstTreeSequence<DependencySpecTree, AllDepSpec>,
+ ConstTreeSequence<DependencySpecTree, AnyDepSpec>,
+ ConstTreeSequence<DependencySpecTree, UseDepSpec>
+ >
+ {
+ typedef Formatter<
+ UseDepSpec,
+ PackageDepSpec,
+ BlockDepSpec,
+ LabelsDepSpec<DependencyLabelVisitorTypes>
+ > Formatter;
+ };
+
+ /**
+ * A DepSpec heirarchy containing things meaningful for sets.
+ *
+ * \ingroup grpdepspecs
+ */
+ struct SetSpecTree :
+ VisitorTypes<
+ SetSpecTree,
+ DepSpec,
+ TreeLeaf<SetSpecTree, PackageDepSpec>,
+ ConstTreeSequence<SetSpecTree, AllDepSpec>
+ >
+ {
+ typedef Formatter<
+ PackageDepSpec
+ > Formatter;
+ };
+
+ /**
* Base class for a dependency spec.
*
* \ingroup grpdepspecs
diff --git a/paludis/dep_spec_flattener.hh b/paludis/dep_spec_flattener.hh
index e5ff577..4768e2b 100644
--- a/paludis/dep_spec_flattener.hh
+++ b/paludis/dep_spec_flattener.hh
@@ -20,7 +20,7 @@
#ifndef PALUDIS_GUARD_PALUDIS_DEP_ATOM_FLATTENER_HH
#define PALUDIS_GUARD_PALUDIS_DEP_ATOM_FLATTENER_HH 1
-#include <paludis/dep_spec-fwd.hh>
+#include <paludis/dep_spec.hh>
#include <paludis/environment-fwd.hh>
#include <paludis/package_id-fwd.hh>
#include <paludis/util/attributes.hh>
diff --git a/paludis/dep_tag.hh b/paludis/dep_tag.hh
index 65c25ef..6f895b9 100644
--- a/paludis/dep_tag.hh
+++ b/paludis/dep_tag.hh
@@ -27,7 +27,7 @@
*/
#include <paludis/dep_tag-fwd.hh>
-#include <paludis/dep_spec-fwd.hh>
+#include <paludis/dep_spec.hh>
#include <paludis/name-fwd.hh>
#include <paludis/package_id-fwd.hh>
#include <paludis/util/instantiation_policy.hh>
diff --git a/paludis/environment.hh b/paludis/environment.hh
index 990e54d..0d7c85b 100644
--- a/paludis/environment.hh
+++ b/paludis/environment.hh
@@ -27,7 +27,7 @@
#include <paludis/name-fwd.hh>
#include <paludis/hook-fwd.hh>
#include <paludis/repository-fwd.hh>
-#include <paludis/dep_spec-fwd.hh>
+#include <paludis/dep_spec.hh>
#include <paludis/package_id-fwd.hh>
#include <paludis/mask-fwd.hh>
diff --git a/paludis/match_package.hh b/paludis/match_package.hh
index c1541c8..8558e70 100644
--- a/paludis/match_package.hh
+++ b/paludis/match_package.hh
@@ -15,7 +15,7 @@
#include <paludis/util/attributes.hh>
#include <paludis/util/tr1_memory.hh>
-#include <paludis/dep_spec-fwd.hh>
+#include <paludis/dep_spec.hh>
#include <paludis/environment-fwd.hh>
#include <paludis/package_id-fwd.hh>
diff --git a/paludis/metadata_key.hh b/paludis/metadata_key.hh
index 821769e..0cbcc12 100644
--- a/paludis/metadata_key.hh
+++ b/paludis/metadata_key.hh
@@ -24,7 +24,7 @@
#include <paludis/mask-fwd.hh>
#include <paludis/package_id-fwd.hh>
#include <paludis/name-fwd.hh>
-#include <paludis/dep_spec-fwd.hh>
+#include <paludis/dep_spec.hh>
#include <paludis/contents-fwd.hh>
#include <paludis/repository-fwd.hh>
#include <paludis/formatter-fwd.hh>
diff --git a/paludis/repositories/cran/cran_dep_parser.hh b/paludis/repositories/cran/cran_dep_parser.hh
index 0618e1e..0b33838 100644
--- a/paludis/repositories/cran/cran_dep_parser.hh
+++ b/paludis/repositories/cran/cran_dep_parser.hh
@@ -21,7 +21,7 @@
#ifndef PALUDIS_GUARD_PALUDIS_CRAN_DEP_PARSER_HH
#define PALUDIS_GUARD_PALUDIS_CRAN_DEP_PARSER_HH 1
-#include <paludis/dep_spec-fwd.hh>
+#include <paludis/dep_spec.hh>
#include <string>
namespace paludis
diff --git a/paludis/repositories/e/check_fetched_files_visitor.hh b/paludis/repositories/e/check_fetched_files_visitor.hh
index 2c4e747..3b60a3f 100644
--- a/paludis/repositories/e/check_fetched_files_visitor.hh
+++ b/paludis/repositories/e/check_fetched_files_visitor.hh
@@ -26,7 +26,7 @@
#include <paludis/util/visitor-fwd.hh>
#include <paludis/util/fs_entry-fwd.hh>
#include <paludis/util/tr1_memory.hh>
-#include <paludis/dep_spec-fwd.hh>
+#include <paludis/dep_spec.hh>
#include <paludis/package_id-fwd.hh>
#include <paludis/environment-fwd.hh>
#include <paludis/action-fwd.hh>
diff --git a/paludis/repositories/e/e_repository_profile.hh b/paludis/repositories/e/e_repository_profile.hh
index 12aa340..bacaa41 100644
--- a/paludis/repositories/e/e_repository_profile.hh
+++ b/paludis/repositories/e/e_repository_profile.hh
@@ -20,7 +20,7 @@
#ifndef PALUDIS_GUARD_PALUDIS_REPOSITORIES_E_E_REPOSITORY_PROFILE_HH
#define PALUDIS_GUARD_PALUDIS_REPOSITORIES_E_E_REPOSITORY_PROFILE_HH 1
-#include <paludis/dep_spec-fwd.hh>
+#include <paludis/dep_spec.hh>
#include <paludis/package_id-fwd.hh>
#include <paludis/name-fwd.hh>
#include <paludis/version_spec-fwd.hh>
diff --git a/paludis/repositories/e/fetch_visitor.hh b/paludis/repositories/e/fetch_visitor.hh
index 886850b..0115b5c 100644
--- a/paludis/repositories/e/fetch_visitor.hh
+++ b/paludis/repositories/e/fetch_visitor.hh
@@ -26,7 +26,7 @@
#include <paludis/util/visitor-fwd.hh>
#include <paludis/util/fs_entry-fwd.hh>
#include <paludis/util/tr1_memory.hh>
-#include <paludis/dep_spec-fwd.hh>
+#include <paludis/dep_spec.hh>
#include <paludis/package_id-fwd.hh>
#include <paludis/environment-fwd.hh>
diff --git a/paludis/repository.hh b/paludis/repository.hh
index fc743b8..4765016 100644
--- a/paludis/repository.hh
+++ b/paludis/repository.hh
@@ -23,7 +23,7 @@
#include <paludis/action-fwd.hh>
#include <paludis/repository-fwd.hh>
#include <paludis/repository_info-fwd.hh>
-#include <paludis/dep_spec-fwd.hh>
+#include <paludis/dep_spec.hh>
#include <paludis/name.hh>
#include <paludis/package_id-fwd.hh>
#include <paludis/qa-fwd.hh>