summaryrefslogtreecommitdiffstats
path: root/src/test/ui/traits/issue-104322.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/traits/issue-104322.rs')
-rw-r--r--src/test/ui/traits/issue-104322.rs80
1 files changed, 0 insertions, 80 deletions
diff --git a/src/test/ui/traits/issue-104322.rs b/src/test/ui/traits/issue-104322.rs
deleted file mode 100644
index dcc27f1f0..000000000
--- a/src/test/ui/traits/issue-104322.rs
+++ /dev/null
@@ -1,80 +0,0 @@
-// build-pass
-//
-// Tests that overflows do not occur in certain situations
-// related to generic diesel code
-
-use mini_diesel::*;
-
-pub trait HandleDelete<K> {}
-
-pub fn handle_delete<D, R>()
-where
- R: HasTable,
- R::Table: HandleDelete<D> + 'static,
-{
-}
-
-impl<K, T> HandleDelete<K> for T
-where
- T: Table + HasTable<Table = T> + 'static,
- K: 'static,
- &'static K: Identifiable<Table = T>,
- T::PrimaryKey: EqAll<<&'static K as Identifiable>::Id>,
- T::Query: FilterDsl<<T::PrimaryKey as EqAll<<&'static K as Identifiable>::Id>>::Output>,
- Filter<T::Query, <T::PrimaryKey as EqAll<<&'static K as Identifiable>::Id>>::Output>:
- IntoUpdateTarget<Table = T>,
-{
-}
-
-mod mini_diesel {
- pub trait HasTable {
- type Table: Table;
- }
-
- pub trait Identifiable: HasTable {
- type Id;
- }
-
- pub trait EqAll<Rhs> {
- type Output;
- }
-
- pub trait IntoUpdateTarget: HasTable {
- type WhereClause;
- }
-
- pub trait Query {
- type SqlType;
- }
-
- pub trait AsQuery {
- type Query: Query;
- }
- impl<T: Query> AsQuery for T {
- type Query = Self;
- }
-
- pub trait FilterDsl<Predicate> {
- type Output;
- }
-
- impl<T, Predicate> FilterDsl<Predicate> for T
- where
- T: Table,
- T::Query: FilterDsl<Predicate>,
- {
- type Output = Filter<T::Query, Predicate>;
- }
-
- pub trait QuerySource {
- type FromClause;
- }
-
- pub trait Table: QuerySource + AsQuery + Sized {
- type PrimaryKey;
- }
-
- pub type Filter<Source, Predicate> = <Source as FilterDsl<Predicate>>::Output;
-}
-
-fn main() {}