1use crate::Expression;
2use crate::pg::Pg;
3use crate::query_builder::ColumnList;
4use crate::query_builder::QueryFragment;
5use crate::query_builder::nodes::StaticQueryFragment;
6use crate::sql_types::SqlType;
7use crate::{Column, Table};
8
9pub(crate) mod copy_from;
10pub(crate) mod copy_to;
11
12#[cfg(feature = "postgres")]
13pub(crate) use self::copy_from::{CopyFromExpression, InternalCopyFromQuery};
14#[cfg(feature = "postgres")]
15pub(crate) use self::copy_to::CopyToCommand;
16
17pub use self::copy_from::{CopyFromQuery, CopyHeader, ExecuteCopyFromDsl};
18pub use self::copy_to::CopyToQuery;
19
20const COPY_MAGIC_HEADER: [u8; 11] = *b"PGCOPY\n\xff\r\n\0";
21
22#[derive(#[automatically_derived]impl ::core::default::Default for CopyFormat {
#[inline]
fn default() -> Self { Self::Text }
}Default, #[automatically_derived]impl ::core::fmt::Debug for CopyFormat {
#[inline]
#[rustc_trivial_field_reads]
fn fmt(&self, f: &mut ::core::fmt::Formatter) -> ::core::fmt::Result {
::core::fmt::Formatter::write_str(f,
match self {
CopyFormat::Text => "Text",
CopyFormat::Csv => "Csv",
CopyFormat::Binary => "Binary",
})
}
}Debug, #[automatically_derived]impl ::core::marker::Copy for CopyFormat { }Copy, #[automatically_derived]#[doc(hidden)]unsafe impl ::core::clone::TrivialClone
for CopyFormat {
}
#[automatically_derived]impl ::core::clone::Clone for CopyFormat {
#[inline]
#[rustc_trivial_field_reads]
fn clone(&self) -> Self { *self }
}Clone)]
28pub enum CopyFormat {
29 #[default]
33 Text,
34 Csv,
36 Binary,
38}
39
40impl CopyFormat {
41 fn to_sql_format(self) -> &'static str {
42 match self {
43 CopyFormat::Text => "text",
44 CopyFormat::Csv => "csv",
45 CopyFormat::Binary => "binary",
46 }
47 }
48}
49
50#[derive(#[automatically_derived]impl ::core::default::Default for CommonOptions {
#[inline]
fn default() -> Self {
CommonOptions {
format: ::core::default::Default::default(),
freeze: ::core::default::Default::default(),
delimiter: ::core::default::Default::default(),
null: ::core::default::Default::default(),
quote: ::core::default::Default::default(),
escape: ::core::default::Default::default(),
}
}
}Default, #[automatically_derived]impl ::core::fmt::Debug for CommonOptions {
#[inline]
#[rustc_trivial_field_reads]
fn fmt(&self, f: &mut ::core::fmt::Formatter) -> ::core::fmt::Result {
let names: &'static _ =
"CommonOptions format freeze delimiter null quote escape";
let values: &[&dyn ::core::fmt::Debug] =
&[&self.format, &self.freeze, &self.delimiter, &self.null,
&self.quote, &&self.escape];
::core::fmt::Formatter::debug_struct_fields_finish(f, names, values)
}
}Debug)]
51struct CommonOptions {
52 format: Option<CopyFormat>,
53 freeze: Option<bool>,
54 delimiter: Option<char>,
55 null: Option<String>,
56 quote: Option<char>,
57 escape: Option<char>,
58}
59
60impl CommonOptions {
61 fn any_set(&self) -> bool {
62 self.format.is_some()
63 || self.freeze.is_some()
64 || self.delimiter.is_some()
65 || self.null.is_some()
66 || self.quote.is_some()
67 || self.escape.is_some()
68 }
69
70 fn walk_ast<'b>(
71 &'b self,
72 mut pass: crate::query_builder::AstPass<'_, 'b, Pg>,
73 comma: &mut &'static str,
74 ) {
75 if let Some(format) = self.format {
76 pass.push_sql(comma);
77 *comma = ", ";
78 pass.push_sql("FORMAT ");
79 pass.push_sql(format.to_sql_format());
80 }
81 if let Some(freeze) = self.freeze {
82 pass.push_sql(&::alloc::__export::must_use({
::alloc::fmt::format(format_args!("{1}FREEZE {0}", freeze as u8,
comma))
})format!("{comma}FREEZE {}", freeze as u8));
83 *comma = ", ";
84 }
85 if let Some(delimiter) = self.delimiter {
86 let delimiter = if delimiter == '\'' {
88 "''".into()
89 } else {
90 String::from(delimiter)
91 };
92 pass.push_sql(&::alloc::__export::must_use({
::alloc::fmt::format(format_args!("{0}DELIMITER \'{1}\'", comma,
delimiter))
})format!("{comma}DELIMITER '{delimiter}'"));
93 *comma = ", ";
94 }
95 if let Some(ref null) = self.null {
96 pass.push_sql(comma);
97 *comma = ", ";
98 let null = null.replace('\'', "''");
102 pass.push_sql("NULL '");
103 pass.push_sql(&null);
104 pass.push_sql("'");
105 }
106 if let Some(quote) = self.quote {
107 let quote = if quote == '\'' {
109 "''".into()
110 } else {
111 String::from(quote)
112 };
113 pass.push_sql(&::alloc::__export::must_use({
::alloc::fmt::format(format_args!("{0}QUOTE \'{1}\'", comma, quote))
})format!("{comma}QUOTE '{quote}'"));
114 *comma = ", ";
115 }
116 if let Some(escape) = self.escape {
117 let escape = if escape == '\'' {
119 "''".into()
120 } else {
121 String::from(escape)
122 };
123 pass.push_sql(&::alloc::__export::must_use({
::alloc::fmt::format(format_args!("{0}ESCAPE \'{1}\'", comma, escape))
})format!("{comma}ESCAPE '{escape}'"));
124 *comma = ", ";
125 }
126 }
127}
128
129pub trait CopyTarget {
133 type Table: Table;
135 type SqlType: SqlType;
137
138 #[doc(hidden)]
139 fn walk_target(pass: crate::query_builder::AstPass<'_, '_, Pg>) -> crate::QueryResult<()>;
140}
141
142impl<T> CopyTarget for T
143where
144 T: Table + StaticQueryFragment,
145 T::SqlType: SqlType,
146 T::AllColumns: ColumnList,
147 T::Component: QueryFragment<Pg>,
148{
149 type Table = Self;
150 type SqlType = T::SqlType;
151
152 fn walk_target(mut pass: crate::query_builder::AstPass<'_, '_, Pg>) -> crate::QueryResult<()> {
153 T::STATIC_COMPONENT.walk_ast(pass.reborrow())?;
154 pass.push_sql("(");
155 T::all_columns().walk_ast(pass.reborrow())?;
156 pass.push_sql(")");
157 Ok(())
158 }
159}
160
161macro_rules! copy_target_for_columns {
162 ($(
163 $Tuple:tt {
164 $(($idx:tt) -> $T:ident, $ST:ident, $TT:ident,)+
165 }
166 )+) => {
167 $(
168 impl<T, $($ST,)*> CopyTarget for ($($ST,)*)
169 where
170 $($ST: Column<Table = T> + Default,)*
171 ($(<$ST as Expression>::SqlType,)*): SqlType,
172 T: Table + StaticQueryFragment,
173 T::Component: QueryFragment<Pg>,
174 Self: ColumnList,
175 {
176 type Table = T;
177 type SqlType = crate::dsl::SqlTypeOf<Self>;
178
179 fn walk_target(
180 mut pass: crate::query_builder::AstPass<'_, '_, Pg>,
181 ) -> crate::QueryResult<()> {
182 T::STATIC_COMPONENT.walk_ast(pass.reborrow())?;
183 pass.push_sql("(");
184 <Self as ColumnList>::walk_ast(&($($ST::default(),)*), pass.reborrow())?;
185 pass.push_sql(")");
186 Ok(())
187 }
188 }
189 )*
190 }
191}
192
193impl<T, ST> CopyTarget for (ST,) where ST: Column<Table = T> + Default,
(<ST as Expression>::SqlType,): SqlType, T: Table + StaticQueryFragment,
T::Component: QueryFragment<Pg>, Self: ColumnList {
type Table = T;
type SqlType = crate::dsl::SqlTypeOf<Self>;
fn walk_target(mut pass: crate::query_builder::AstPass<'_, '_, Pg>)
-> crate::QueryResult<()> {
T::STATIC_COMPONENT.walk_ast(pass.reborrow())?;
pass.push_sql("(");
<Self as ColumnList>::walk_ast(&(ST::default(),), pass.reborrow())?;
pass.push_sql(")");
Ok(())
}
}
impl<T, ST, ST1> CopyTarget for (ST, ST1) where ST: Column<Table = T> +
Default, ST1: Column<Table = T> + Default,
(<ST as Expression>::SqlType, <ST1 as Expression>::SqlType): SqlType,
T: Table + StaticQueryFragment, T::Component: QueryFragment<Pg>,
Self: ColumnList {
type Table = T;
type SqlType = crate::dsl::SqlTypeOf<Self>;
fn walk_target(mut pass: crate::query_builder::AstPass<'_, '_, Pg>)
-> crate::QueryResult<()> {
T::STATIC_COMPONENT.walk_ast(pass.reborrow())?;
pass.push_sql("(");
<Self as
ColumnList>::walk_ast(&(ST::default(), ST1::default()),
pass.reborrow())?;
pass.push_sql(")");
Ok(())
}
}
impl<T, ST, ST1, ST2> CopyTarget for (ST, ST1, ST2) where
ST: Column<Table = T> + Default, ST1: Column<Table = T> + Default,
ST2: Column<Table = T> + Default,
(<ST as Expression>::SqlType, <ST1 as Expression>::SqlType,
<ST2 as Expression>::SqlType): SqlType, T: Table + StaticQueryFragment,
T::Component: QueryFragment<Pg>, Self: ColumnList {
type Table = T;
type SqlType = crate::dsl::SqlTypeOf<Self>;
fn walk_target(mut pass: crate::query_builder::AstPass<'_, '_, Pg>)
-> crate::QueryResult<()> {
T::STATIC_COMPONENT.walk_ast(pass.reborrow())?;
pass.push_sql("(");
<Self as
ColumnList>::walk_ast(&(ST::default(), ST1::default(),
ST2::default()), pass.reborrow())?;
pass.push_sql(")");
Ok(())
}
}
impl<T, ST, ST1, ST2, ST3> CopyTarget for (ST, ST1, ST2, ST3) where
ST: Column<Table = T> + Default, ST1: Column<Table = T> + Default,
ST2: Column<Table = T> + Default, ST3: Column<Table = T> + Default,
(<ST as Expression>::SqlType, <ST1 as Expression>::SqlType,
<ST2 as Expression>::SqlType, <ST3 as Expression>::SqlType): SqlType,
T: Table + StaticQueryFragment, T::Component: QueryFragment<Pg>,
Self: ColumnList {
type Table = T;
type SqlType = crate::dsl::SqlTypeOf<Self>;
fn walk_target(mut pass: crate::query_builder::AstPass<'_, '_, Pg>)
-> crate::QueryResult<()> {
T::STATIC_COMPONENT.walk_ast(pass.reborrow())?;
pass.push_sql("(");
<Self as
ColumnList>::walk_ast(&(ST::default(), ST1::default(),
ST2::default(), ST3::default()), pass.reborrow())?;
pass.push_sql(")");
Ok(())
}
}
impl<T, ST, ST1, ST2, ST3, ST4> CopyTarget for (ST, ST1, ST2, ST3, ST4) where
ST: Column<Table = T> + Default, ST1: Column<Table = T> + Default,
ST2: Column<Table = T> + Default, ST3: Column<Table = T> + Default,
ST4: Column<Table = T> + Default,
(<ST as Expression>::SqlType, <ST1 as Expression>::SqlType,
<ST2 as Expression>::SqlType, <ST3 as Expression>::SqlType,
<ST4 as Expression>::SqlType): SqlType, T: Table + StaticQueryFragment,
T::Component: QueryFragment<Pg>, Self: ColumnList {
type Table = T;
type SqlType = crate::dsl::SqlTypeOf<Self>;
fn walk_target(mut pass: crate::query_builder::AstPass<'_, '_, Pg>)
-> crate::QueryResult<()> {
T::STATIC_COMPONENT.walk_ast(pass.reborrow())?;
pass.push_sql("(");
<Self as
ColumnList>::walk_ast(&(ST::default(), ST1::default(),
ST2::default(), ST3::default(), ST4::default()),
pass.reborrow())?;
pass.push_sql(")");
Ok(())
}
}
impl<T, ST, ST1, ST2, ST3, ST4, ST5> CopyTarget for
(ST, ST1, ST2, ST3, ST4, ST5) where ST: Column<Table = T> + Default,
ST1: Column<Table = T> + Default, ST2: Column<Table = T> + Default,
ST3: Column<Table = T> + Default, ST4: Column<Table = T> + Default,
ST5: Column<Table = T> + Default,
(<ST as Expression>::SqlType, <ST1 as Expression>::SqlType,
<ST2 as Expression>::SqlType, <ST3 as Expression>::SqlType,
<ST4 as Expression>::SqlType, <ST5 as Expression>::SqlType): SqlType,
T: Table + StaticQueryFragment, T::Component: QueryFragment<Pg>,
Self: ColumnList {
type Table = T;
type SqlType = crate::dsl::SqlTypeOf<Self>;
fn walk_target(mut pass: crate::query_builder::AstPass<'_, '_, Pg>)
-> crate::QueryResult<()> {
T::STATIC_COMPONENT.walk_ast(pass.reborrow())?;
pass.push_sql("(");
<Self as
ColumnList>::walk_ast(&(ST::default(), ST1::default(),
ST2::default(), ST3::default(), ST4::default(),
ST5::default()), pass.reborrow())?;
pass.push_sql(")");
Ok(())
}
}
impl<T, ST, ST1, ST2, ST3, ST4, ST5, ST6> CopyTarget for
(ST, ST1, ST2, ST3, ST4, ST5, ST6) where ST: Column<Table = T> + Default,
ST1: Column<Table = T> + Default, ST2: Column<Table = T> + Default,
ST3: Column<Table = T> + Default, ST4: Column<Table = T> + Default,
ST5: Column<Table = T> + Default, ST6: Column<Table = T> + Default,
(<ST as Expression>::SqlType, <ST1 as Expression>::SqlType,
<ST2 as Expression>::SqlType, <ST3 as Expression>::SqlType,
<ST4 as Expression>::SqlType, <ST5 as Expression>::SqlType,
<ST6 as Expression>::SqlType): SqlType, T: Table + StaticQueryFragment,
T::Component: QueryFragment<Pg>, Self: ColumnList {
type Table = T;
type SqlType = crate::dsl::SqlTypeOf<Self>;
fn walk_target(mut pass: crate::query_builder::AstPass<'_, '_, Pg>)
-> crate::QueryResult<()> {
T::STATIC_COMPONENT.walk_ast(pass.reborrow())?;
pass.push_sql("(");
<Self as
ColumnList>::walk_ast(&(ST::default(), ST1::default(),
ST2::default(), ST3::default(), ST4::default(),
ST5::default(), ST6::default()), pass.reborrow())?;
pass.push_sql(")");
Ok(())
}
}
impl<T, ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7> CopyTarget for
(ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7) where ST: Column<Table = T> +
Default, ST1: Column<Table = T> + Default, ST2: Column<Table = T> +
Default, ST3: Column<Table = T> + Default, ST4: Column<Table = T> +
Default, ST5: Column<Table = T> + Default, ST6: Column<Table = T> +
Default, ST7: Column<Table = T> + Default,
(<ST as Expression>::SqlType, <ST1 as Expression>::SqlType,
<ST2 as Expression>::SqlType, <ST3 as Expression>::SqlType,
<ST4 as Expression>::SqlType, <ST5 as Expression>::SqlType,
<ST6 as Expression>::SqlType, <ST7 as Expression>::SqlType): SqlType,
T: Table + StaticQueryFragment, T::Component: QueryFragment<Pg>,
Self: ColumnList {
type Table = T;
type SqlType = crate::dsl::SqlTypeOf<Self>;
fn walk_target(mut pass: crate::query_builder::AstPass<'_, '_, Pg>)
-> crate::QueryResult<()> {
T::STATIC_COMPONENT.walk_ast(pass.reborrow())?;
pass.push_sql("(");
<Self as
ColumnList>::walk_ast(&(ST::default(), ST1::default(),
ST2::default(), ST3::default(), ST4::default(),
ST5::default(), ST6::default(), ST7::default()),
pass.reborrow())?;
pass.push_sql(")");
Ok(())
}
}
impl<T, ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8> CopyTarget for
(ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8) where ST: Column<Table = T> +
Default, ST1: Column<Table = T> + Default, ST2: Column<Table = T> +
Default, ST3: Column<Table = T> + Default, ST4: Column<Table = T> +
Default, ST5: Column<Table = T> + Default, ST6: Column<Table = T> +
Default, ST7: Column<Table = T> + Default, ST8: Column<Table = T> +
Default,
(<ST as Expression>::SqlType, <ST1 as Expression>::SqlType,
<ST2 as Expression>::SqlType, <ST3 as Expression>::SqlType,
<ST4 as Expression>::SqlType, <ST5 as Expression>::SqlType,
<ST6 as Expression>::SqlType, <ST7 as Expression>::SqlType,
<ST8 as Expression>::SqlType): SqlType, T: Table + StaticQueryFragment,
T::Component: QueryFragment<Pg>, Self: ColumnList {
type Table = T;
type SqlType = crate::dsl::SqlTypeOf<Self>;
fn walk_target(mut pass: crate::query_builder::AstPass<'_, '_, Pg>)
-> crate::QueryResult<()> {
T::STATIC_COMPONENT.walk_ast(pass.reborrow())?;
pass.push_sql("(");
<Self as
ColumnList>::walk_ast(&(ST::default(), ST1::default(),
ST2::default(), ST3::default(), ST4::default(),
ST5::default(), ST6::default(), ST7::default(),
ST8::default()), pass.reborrow())?;
pass.push_sql(")");
Ok(())
}
}
impl<T, ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9> CopyTarget for
(ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9) where
ST: Column<Table = T> + Default, ST1: Column<Table = T> + Default,
ST2: Column<Table = T> + Default, ST3: Column<Table = T> + Default,
ST4: Column<Table = T> + Default, ST5: Column<Table = T> + Default,
ST6: Column<Table = T> + Default, ST7: Column<Table = T> + Default,
ST8: Column<Table = T> + Default, ST9: Column<Table = T> + Default,
(<ST as Expression>::SqlType, <ST1 as Expression>::SqlType,
<ST2 as Expression>::SqlType, <ST3 as Expression>::SqlType,
<ST4 as Expression>::SqlType, <ST5 as Expression>::SqlType,
<ST6 as Expression>::SqlType, <ST7 as Expression>::SqlType,
<ST8 as Expression>::SqlType, <ST9 as Expression>::SqlType): SqlType,
T: Table + StaticQueryFragment, T::Component: QueryFragment<Pg>,
Self: ColumnList {
type Table = T;
type SqlType = crate::dsl::SqlTypeOf<Self>;
fn walk_target(mut pass: crate::query_builder::AstPass<'_, '_, Pg>)
-> crate::QueryResult<()> {
T::STATIC_COMPONENT.walk_ast(pass.reborrow())?;
pass.push_sql("(");
<Self as
ColumnList>::walk_ast(&(ST::default(), ST1::default(),
ST2::default(), ST3::default(), ST4::default(),
ST5::default(), ST6::default(), ST7::default(),
ST8::default(), ST9::default()), pass.reborrow())?;
pass.push_sql(")");
Ok(())
}
}
impl<T, ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10> CopyTarget for
(ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10) where
ST: Column<Table = T> + Default, ST1: Column<Table = T> + Default,
ST2: Column<Table = T> + Default, ST3: Column<Table = T> + Default,
ST4: Column<Table = T> + Default, ST5: Column<Table = T> + Default,
ST6: Column<Table = T> + Default, ST7: Column<Table = T> + Default,
ST8: Column<Table = T> + Default, ST9: Column<Table = T> + Default,
ST10: Column<Table = T> + Default,
(<ST as Expression>::SqlType, <ST1 as Expression>::SqlType,
<ST2 as Expression>::SqlType, <ST3 as Expression>::SqlType,
<ST4 as Expression>::SqlType, <ST5 as Expression>::SqlType,
<ST6 as Expression>::SqlType, <ST7 as Expression>::SqlType,
<ST8 as Expression>::SqlType, <ST9 as Expression>::SqlType,
<ST10 as Expression>::SqlType): SqlType, T: Table + StaticQueryFragment,
T::Component: QueryFragment<Pg>, Self: ColumnList {
type Table = T;
type SqlType = crate::dsl::SqlTypeOf<Self>;
fn walk_target(mut pass: crate::query_builder::AstPass<'_, '_, Pg>)
-> crate::QueryResult<()> {
T::STATIC_COMPONENT.walk_ast(pass.reborrow())?;
pass.push_sql("(");
<Self as
ColumnList>::walk_ast(&(ST::default(), ST1::default(),
ST2::default(), ST3::default(), ST4::default(),
ST5::default(), ST6::default(), ST7::default(),
ST8::default(), ST9::default(), ST10::default()),
pass.reborrow())?;
pass.push_sql(")");
Ok(())
}
}
impl<T, ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11>
CopyTarget for
(ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11) where
ST: Column<Table = T> + Default, ST1: Column<Table = T> + Default,
ST2: Column<Table = T> + Default, ST3: Column<Table = T> + Default,
ST4: Column<Table = T> + Default, ST5: Column<Table = T> + Default,
ST6: Column<Table = T> + Default, ST7: Column<Table = T> + Default,
ST8: Column<Table = T> + Default, ST9: Column<Table = T> + Default,
ST10: Column<Table = T> + Default, ST11: Column<Table = T> + Default,
(<ST as Expression>::SqlType, <ST1 as Expression>::SqlType,
<ST2 as Expression>::SqlType, <ST3 as Expression>::SqlType,
<ST4 as Expression>::SqlType, <ST5 as Expression>::SqlType,
<ST6 as Expression>::SqlType, <ST7 as Expression>::SqlType,
<ST8 as Expression>::SqlType, <ST9 as Expression>::SqlType,
<ST10 as Expression>::SqlType, <ST11 as Expression>::SqlType): SqlType,
T: Table + StaticQueryFragment, T::Component: QueryFragment<Pg>,
Self: ColumnList {
type Table = T;
type SqlType = crate::dsl::SqlTypeOf<Self>;
fn walk_target(mut pass: crate::query_builder::AstPass<'_, '_, Pg>)
-> crate::QueryResult<()> {
T::STATIC_COMPONENT.walk_ast(pass.reborrow())?;
pass.push_sql("(");
<Self as
ColumnList>::walk_ast(&(ST::default(), ST1::default(),
ST2::default(), ST3::default(), ST4::default(),
ST5::default(), ST6::default(), ST7::default(),
ST8::default(), ST9::default(), ST10::default(),
ST11::default()), pass.reborrow())?;
pass.push_sql(")");
Ok(())
}
}
impl<T, ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12>
CopyTarget for
(ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12) where
ST: Column<Table = T> + Default, ST1: Column<Table = T> + Default,
ST2: Column<Table = T> + Default, ST3: Column<Table = T> + Default,
ST4: Column<Table = T> + Default, ST5: Column<Table = T> + Default,
ST6: Column<Table = T> + Default, ST7: Column<Table = T> + Default,
ST8: Column<Table = T> + Default, ST9: Column<Table = T> + Default,
ST10: Column<Table = T> + Default, ST11: Column<Table = T> + Default,
ST12: Column<Table = T> + Default,
(<ST as Expression>::SqlType, <ST1 as Expression>::SqlType,
<ST2 as Expression>::SqlType, <ST3 as Expression>::SqlType,
<ST4 as Expression>::SqlType, <ST5 as Expression>::SqlType,
<ST6 as Expression>::SqlType, <ST7 as Expression>::SqlType,
<ST8 as Expression>::SqlType, <ST9 as Expression>::SqlType,
<ST10 as Expression>::SqlType, <ST11 as Expression>::SqlType,
<ST12 as Expression>::SqlType): SqlType, T: Table + StaticQueryFragment,
T::Component: QueryFragment<Pg>, Self: ColumnList {
type Table = T;
type SqlType = crate::dsl::SqlTypeOf<Self>;
fn walk_target(mut pass: crate::query_builder::AstPass<'_, '_, Pg>)
-> crate::QueryResult<()> {
T::STATIC_COMPONENT.walk_ast(pass.reborrow())?;
pass.push_sql("(");
<Self as
ColumnList>::walk_ast(&(ST::default(), ST1::default(),
ST2::default(), ST3::default(), ST4::default(),
ST5::default(), ST6::default(), ST7::default(),
ST8::default(), ST9::default(), ST10::default(),
ST11::default(), ST12::default()), pass.reborrow())?;
pass.push_sql(")");
Ok(())
}
}
impl<T, ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12,
ST13> CopyTarget for
(ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13)
where ST: Column<Table = T> + Default, ST1: Column<Table = T> + Default,
ST2: Column<Table = T> + Default, ST3: Column<Table = T> + Default,
ST4: Column<Table = T> + Default, ST5: Column<Table = T> + Default,
ST6: Column<Table = T> + Default, ST7: Column<Table = T> + Default,
ST8: Column<Table = T> + Default, ST9: Column<Table = T> + Default,
ST10: Column<Table = T> + Default, ST11: Column<Table = T> + Default,
ST12: Column<Table = T> + Default, ST13: Column<Table = T> + Default,
(<ST as Expression>::SqlType, <ST1 as Expression>::SqlType,
<ST2 as Expression>::SqlType, <ST3 as Expression>::SqlType,
<ST4 as Expression>::SqlType, <ST5 as Expression>::SqlType,
<ST6 as Expression>::SqlType, <ST7 as Expression>::SqlType,
<ST8 as Expression>::SqlType, <ST9 as Expression>::SqlType,
<ST10 as Expression>::SqlType, <ST11 as Expression>::SqlType,
<ST12 as Expression>::SqlType, <ST13 as Expression>::SqlType): SqlType,
T: Table + StaticQueryFragment, T::Component: QueryFragment<Pg>,
Self: ColumnList {
type Table = T;
type SqlType = crate::dsl::SqlTypeOf<Self>;
fn walk_target(mut pass: crate::query_builder::AstPass<'_, '_, Pg>)
-> crate::QueryResult<()> {
T::STATIC_COMPONENT.walk_ast(pass.reborrow())?;
pass.push_sql("(");
<Self as
ColumnList>::walk_ast(&(ST::default(), ST1::default(),
ST2::default(), ST3::default(), ST4::default(),
ST5::default(), ST6::default(), ST7::default(),
ST8::default(), ST9::default(), ST10::default(),
ST11::default(), ST12::default(), ST13::default()),
pass.reborrow())?;
pass.push_sql(")");
Ok(())
}
}
impl<T, ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12,
ST13, ST14> CopyTarget for
(ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13,
ST14) where ST: Column<Table = T> + Default, ST1: Column<Table = T> +
Default, ST2: Column<Table = T> + Default, ST3: Column<Table = T> +
Default, ST4: Column<Table = T> + Default, ST5: Column<Table = T> +
Default, ST6: Column<Table = T> + Default, ST7: Column<Table = T> +
Default, ST8: Column<Table = T> + Default, ST9: Column<Table = T> +
Default, ST10: Column<Table = T> + Default, ST11: Column<Table = T> +
Default, ST12: Column<Table = T> + Default, ST13: Column<Table = T> +
Default, ST14: Column<Table = T> + Default,
(<ST as Expression>::SqlType, <ST1 as Expression>::SqlType,
<ST2 as Expression>::SqlType, <ST3 as Expression>::SqlType,
<ST4 as Expression>::SqlType, <ST5 as Expression>::SqlType,
<ST6 as Expression>::SqlType, <ST7 as Expression>::SqlType,
<ST8 as Expression>::SqlType, <ST9 as Expression>::SqlType,
<ST10 as Expression>::SqlType, <ST11 as Expression>::SqlType,
<ST12 as Expression>::SqlType, <ST13 as Expression>::SqlType,
<ST14 as Expression>::SqlType): SqlType, T: Table + StaticQueryFragment,
T::Component: QueryFragment<Pg>, Self: ColumnList {
type Table = T;
type SqlType = crate::dsl::SqlTypeOf<Self>;
fn walk_target(mut pass: crate::query_builder::AstPass<'_, '_, Pg>)
-> crate::QueryResult<()> {
T::STATIC_COMPONENT.walk_ast(pass.reborrow())?;
pass.push_sql("(");
<Self as
ColumnList>::walk_ast(&(ST::default(), ST1::default(),
ST2::default(), ST3::default(), ST4::default(),
ST5::default(), ST6::default(), ST7::default(),
ST8::default(), ST9::default(), ST10::default(),
ST11::default(), ST12::default(), ST13::default(),
ST14::default()), pass.reborrow())?;
pass.push_sql(")");
Ok(())
}
}
impl<T, ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12,
ST13, ST14, ST15> CopyTarget for
(ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13,
ST14, ST15) where ST: Column<Table = T> + Default,
ST1: Column<Table = T> + Default, ST2: Column<Table = T> + Default,
ST3: Column<Table = T> + Default, ST4: Column<Table = T> + Default,
ST5: Column<Table = T> + Default, ST6: Column<Table = T> + Default,
ST7: Column<Table = T> + Default, ST8: Column<Table = T> + Default,
ST9: Column<Table = T> + Default, ST10: Column<Table = T> + Default,
ST11: Column<Table = T> + Default, ST12: Column<Table = T> + Default,
ST13: Column<Table = T> + Default, ST14: Column<Table = T> + Default,
ST15: Column<Table = T> + Default,
(<ST as Expression>::SqlType, <ST1 as Expression>::SqlType,
<ST2 as Expression>::SqlType, <ST3 as Expression>::SqlType,
<ST4 as Expression>::SqlType, <ST5 as Expression>::SqlType,
<ST6 as Expression>::SqlType, <ST7 as Expression>::SqlType,
<ST8 as Expression>::SqlType, <ST9 as Expression>::SqlType,
<ST10 as Expression>::SqlType, <ST11 as Expression>::SqlType,
<ST12 as Expression>::SqlType, <ST13 as Expression>::SqlType,
<ST14 as Expression>::SqlType, <ST15 as Expression>::SqlType): SqlType,
T: Table + StaticQueryFragment, T::Component: QueryFragment<Pg>,
Self: ColumnList {
type Table = T;
type SqlType = crate::dsl::SqlTypeOf<Self>;
fn walk_target(mut pass: crate::query_builder::AstPass<'_, '_, Pg>)
-> crate::QueryResult<()> {
T::STATIC_COMPONENT.walk_ast(pass.reborrow())?;
pass.push_sql("(");
<Self as
ColumnList>::walk_ast(&(ST::default(), ST1::default(),
ST2::default(), ST3::default(), ST4::default(),
ST5::default(), ST6::default(), ST7::default(),
ST8::default(), ST9::default(), ST10::default(),
ST11::default(), ST12::default(), ST13::default(),
ST14::default(), ST15::default()), pass.reborrow())?;
pass.push_sql(")");
Ok(())
}
}
impl<T, ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12,
ST13, ST14, ST15, ST16> CopyTarget for
(ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13,
ST14, ST15, ST16) where ST: Column<Table = T> + Default,
ST1: Column<Table = T> + Default, ST2: Column<Table = T> + Default,
ST3: Column<Table = T> + Default, ST4: Column<Table = T> + Default,
ST5: Column<Table = T> + Default, ST6: Column<Table = T> + Default,
ST7: Column<Table = T> + Default, ST8: Column<Table = T> + Default,
ST9: Column<Table = T> + Default, ST10: Column<Table = T> + Default,
ST11: Column<Table = T> + Default, ST12: Column<Table = T> + Default,
ST13: Column<Table = T> + Default, ST14: Column<Table = T> + Default,
ST15: Column<Table = T> + Default, ST16: Column<Table = T> + Default,
(<ST as Expression>::SqlType, <ST1 as Expression>::SqlType,
<ST2 as Expression>::SqlType, <ST3 as Expression>::SqlType,
<ST4 as Expression>::SqlType, <ST5 as Expression>::SqlType,
<ST6 as Expression>::SqlType, <ST7 as Expression>::SqlType,
<ST8 as Expression>::SqlType, <ST9 as Expression>::SqlType,
<ST10 as Expression>::SqlType, <ST11 as Expression>::SqlType,
<ST12 as Expression>::SqlType, <ST13 as Expression>::SqlType,
<ST14 as Expression>::SqlType, <ST15 as Expression>::SqlType,
<ST16 as Expression>::SqlType): SqlType, T: Table + StaticQueryFragment,
T::Component: QueryFragment<Pg>, Self: ColumnList {
type Table = T;
type SqlType = crate::dsl::SqlTypeOf<Self>;
fn walk_target(mut pass: crate::query_builder::AstPass<'_, '_, Pg>)
-> crate::QueryResult<()> {
T::STATIC_COMPONENT.walk_ast(pass.reborrow())?;
pass.push_sql("(");
<Self as
ColumnList>::walk_ast(&(ST::default(), ST1::default(),
ST2::default(), ST3::default(), ST4::default(),
ST5::default(), ST6::default(), ST7::default(),
ST8::default(), ST9::default(), ST10::default(),
ST11::default(), ST12::default(), ST13::default(),
ST14::default(), ST15::default(), ST16::default()),
pass.reborrow())?;
pass.push_sql(")");
Ok(())
}
}
impl<T, ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12,
ST13, ST14, ST15, ST16, ST17> CopyTarget for
(ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13,
ST14, ST15, ST16, ST17) where ST: Column<Table = T> + Default,
ST1: Column<Table = T> + Default, ST2: Column<Table = T> + Default,
ST3: Column<Table = T> + Default, ST4: Column<Table = T> + Default,
ST5: Column<Table = T> + Default, ST6: Column<Table = T> + Default,
ST7: Column<Table = T> + Default, ST8: Column<Table = T> + Default,
ST9: Column<Table = T> + Default, ST10: Column<Table = T> + Default,
ST11: Column<Table = T> + Default, ST12: Column<Table = T> + Default,
ST13: Column<Table = T> + Default, ST14: Column<Table = T> + Default,
ST15: Column<Table = T> + Default, ST16: Column<Table = T> + Default,
ST17: Column<Table = T> + Default,
(<ST as Expression>::SqlType, <ST1 as Expression>::SqlType,
<ST2 as Expression>::SqlType, <ST3 as Expression>::SqlType,
<ST4 as Expression>::SqlType, <ST5 as Expression>::SqlType,
<ST6 as Expression>::SqlType, <ST7 as Expression>::SqlType,
<ST8 as Expression>::SqlType, <ST9 as Expression>::SqlType,
<ST10 as Expression>::SqlType, <ST11 as Expression>::SqlType,
<ST12 as Expression>::SqlType, <ST13 as Expression>::SqlType,
<ST14 as Expression>::SqlType, <ST15 as Expression>::SqlType,
<ST16 as Expression>::SqlType, <ST17 as Expression>::SqlType): SqlType,
T: Table + StaticQueryFragment, T::Component: QueryFragment<Pg>,
Self: ColumnList {
type Table = T;
type SqlType = crate::dsl::SqlTypeOf<Self>;
fn walk_target(mut pass: crate::query_builder::AstPass<'_, '_, Pg>)
-> crate::QueryResult<()> {
T::STATIC_COMPONENT.walk_ast(pass.reborrow())?;
pass.push_sql("(");
<Self as
ColumnList>::walk_ast(&(ST::default(), ST1::default(),
ST2::default(), ST3::default(), ST4::default(),
ST5::default(), ST6::default(), ST7::default(),
ST8::default(), ST9::default(), ST10::default(),
ST11::default(), ST12::default(), ST13::default(),
ST14::default(), ST15::default(), ST16::default(),
ST17::default()), pass.reborrow())?;
pass.push_sql(")");
Ok(())
}
}
impl<T, ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12,
ST13, ST14, ST15, ST16, ST17, ST18> CopyTarget for
(ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13,
ST14, ST15, ST16, ST17, ST18) where ST: Column<Table = T> + Default,
ST1: Column<Table = T> + Default, ST2: Column<Table = T> + Default,
ST3: Column<Table = T> + Default, ST4: Column<Table = T> + Default,
ST5: Column<Table = T> + Default, ST6: Column<Table = T> + Default,
ST7: Column<Table = T> + Default, ST8: Column<Table = T> + Default,
ST9: Column<Table = T> + Default, ST10: Column<Table = T> + Default,
ST11: Column<Table = T> + Default, ST12: Column<Table = T> + Default,
ST13: Column<Table = T> + Default, ST14: Column<Table = T> + Default,
ST15: Column<Table = T> + Default, ST16: Column<Table = T> + Default,
ST17: Column<Table = T> + Default, ST18: Column<Table = T> + Default,
(<ST as Expression>::SqlType, <ST1 as Expression>::SqlType,
<ST2 as Expression>::SqlType, <ST3 as Expression>::SqlType,
<ST4 as Expression>::SqlType, <ST5 as Expression>::SqlType,
<ST6 as Expression>::SqlType, <ST7 as Expression>::SqlType,
<ST8 as Expression>::SqlType, <ST9 as Expression>::SqlType,
<ST10 as Expression>::SqlType, <ST11 as Expression>::SqlType,
<ST12 as Expression>::SqlType, <ST13 as Expression>::SqlType,
<ST14 as Expression>::SqlType, <ST15 as Expression>::SqlType,
<ST16 as Expression>::SqlType, <ST17 as Expression>::SqlType,
<ST18 as Expression>::SqlType): SqlType, T: Table + StaticQueryFragment,
T::Component: QueryFragment<Pg>, Self: ColumnList {
type Table = T;
type SqlType = crate::dsl::SqlTypeOf<Self>;
fn walk_target(mut pass: crate::query_builder::AstPass<'_, '_, Pg>)
-> crate::QueryResult<()> {
T::STATIC_COMPONENT.walk_ast(pass.reborrow())?;
pass.push_sql("(");
<Self as
ColumnList>::walk_ast(&(ST::default(), ST1::default(),
ST2::default(), ST3::default(), ST4::default(),
ST5::default(), ST6::default(), ST7::default(),
ST8::default(), ST9::default(), ST10::default(),
ST11::default(), ST12::default(), ST13::default(),
ST14::default(), ST15::default(), ST16::default(),
ST17::default(), ST18::default()), pass.reborrow())?;
pass.push_sql(")");
Ok(())
}
}
impl<T, ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12,
ST13, ST14, ST15, ST16, ST17, ST18, ST19> CopyTarget for
(ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13,
ST14, ST15, ST16, ST17, ST18, ST19) where ST: Column<Table = T> + Default,
ST1: Column<Table = T> + Default, ST2: Column<Table = T> + Default,
ST3: Column<Table = T> + Default, ST4: Column<Table = T> + Default,
ST5: Column<Table = T> + Default, ST6: Column<Table = T> + Default,
ST7: Column<Table = T> + Default, ST8: Column<Table = T> + Default,
ST9: Column<Table = T> + Default, ST10: Column<Table = T> + Default,
ST11: Column<Table = T> + Default, ST12: Column<Table = T> + Default,
ST13: Column<Table = T> + Default, ST14: Column<Table = T> + Default,
ST15: Column<Table = T> + Default, ST16: Column<Table = T> + Default,
ST17: Column<Table = T> + Default, ST18: Column<Table = T> + Default,
ST19: Column<Table = T> + Default,
(<ST as Expression>::SqlType, <ST1 as Expression>::SqlType,
<ST2 as Expression>::SqlType, <ST3 as Expression>::SqlType,
<ST4 as Expression>::SqlType, <ST5 as Expression>::SqlType,
<ST6 as Expression>::SqlType, <ST7 as Expression>::SqlType,
<ST8 as Expression>::SqlType, <ST9 as Expression>::SqlType,
<ST10 as Expression>::SqlType, <ST11 as Expression>::SqlType,
<ST12 as Expression>::SqlType, <ST13 as Expression>::SqlType,
<ST14 as Expression>::SqlType, <ST15 as Expression>::SqlType,
<ST16 as Expression>::SqlType, <ST17 as Expression>::SqlType,
<ST18 as Expression>::SqlType, <ST19 as Expression>::SqlType): SqlType,
T: Table + StaticQueryFragment, T::Component: QueryFragment<Pg>,
Self: ColumnList {
type Table = T;
type SqlType = crate::dsl::SqlTypeOf<Self>;
fn walk_target(mut pass: crate::query_builder::AstPass<'_, '_, Pg>)
-> crate::QueryResult<()> {
T::STATIC_COMPONENT.walk_ast(pass.reborrow())?;
pass.push_sql("(");
<Self as
ColumnList>::walk_ast(&(ST::default(), ST1::default(),
ST2::default(), ST3::default(), ST4::default(),
ST5::default(), ST6::default(), ST7::default(),
ST8::default(), ST9::default(), ST10::default(),
ST11::default(), ST12::default(), ST13::default(),
ST14::default(), ST15::default(), ST16::default(),
ST17::default(), ST18::default(), ST19::default()),
pass.reborrow())?;
pass.push_sql(")");
Ok(())
}
}
impl<T, ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12,
ST13, ST14, ST15, ST16, ST17, ST18, ST19, ST20> CopyTarget for
(ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13,
ST14, ST15, ST16, ST17, ST18, ST19, ST20) where ST: Column<Table = T> +
Default, ST1: Column<Table = T> + Default, ST2: Column<Table = T> +
Default, ST3: Column<Table = T> + Default, ST4: Column<Table = T> +
Default, ST5: Column<Table = T> + Default, ST6: Column<Table = T> +
Default, ST7: Column<Table = T> + Default, ST8: Column<Table = T> +
Default, ST9: Column<Table = T> + Default, ST10: Column<Table = T> +
Default, ST11: Column<Table = T> + Default, ST12: Column<Table = T> +
Default, ST13: Column<Table = T> + Default, ST14: Column<Table = T> +
Default, ST15: Column<Table = T> + Default, ST16: Column<Table = T> +
Default, ST17: Column<Table = T> + Default, ST18: Column<Table = T> +
Default, ST19: Column<Table = T> + Default, ST20: Column<Table = T> +
Default,
(<ST as Expression>::SqlType, <ST1 as Expression>::SqlType,
<ST2 as Expression>::SqlType, <ST3 as Expression>::SqlType,
<ST4 as Expression>::SqlType, <ST5 as Expression>::SqlType,
<ST6 as Expression>::SqlType, <ST7 as Expression>::SqlType,
<ST8 as Expression>::SqlType, <ST9 as Expression>::SqlType,
<ST10 as Expression>::SqlType, <ST11 as Expression>::SqlType,
<ST12 as Expression>::SqlType, <ST13 as Expression>::SqlType,
<ST14 as Expression>::SqlType, <ST15 as Expression>::SqlType,
<ST16 as Expression>::SqlType, <ST17 as Expression>::SqlType,
<ST18 as Expression>::SqlType, <ST19 as Expression>::SqlType,
<ST20 as Expression>::SqlType): SqlType, T: Table + StaticQueryFragment,
T::Component: QueryFragment<Pg>, Self: ColumnList {
type Table = T;
type SqlType = crate::dsl::SqlTypeOf<Self>;
fn walk_target(mut pass: crate::query_builder::AstPass<'_, '_, Pg>)
-> crate::QueryResult<()> {
T::STATIC_COMPONENT.walk_ast(pass.reborrow())?;
pass.push_sql("(");
<Self as
ColumnList>::walk_ast(&(ST::default(), ST1::default(),
ST2::default(), ST3::default(), ST4::default(),
ST5::default(), ST6::default(), ST7::default(),
ST8::default(), ST9::default(), ST10::default(),
ST11::default(), ST12::default(), ST13::default(),
ST14::default(), ST15::default(), ST16::default(),
ST17::default(), ST18::default(), ST19::default(),
ST20::default()), pass.reborrow())?;
pass.push_sql(")");
Ok(())
}
}
impl<T, ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12,
ST13, ST14, ST15, ST16, ST17, ST18, ST19, ST20, ST21> CopyTarget for
(ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13,
ST14, ST15, ST16, ST17, ST18, ST19, ST20, ST21) where
ST: Column<Table = T> + Default, ST1: Column<Table = T> + Default,
ST2: Column<Table = T> + Default, ST3: Column<Table = T> + Default,
ST4: Column<Table = T> + Default, ST5: Column<Table = T> + Default,
ST6: Column<Table = T> + Default, ST7: Column<Table = T> + Default,
ST8: Column<Table = T> + Default, ST9: Column<Table = T> + Default,
ST10: Column<Table = T> + Default, ST11: Column<Table = T> + Default,
ST12: Column<Table = T> + Default, ST13: Column<Table = T> + Default,
ST14: Column<Table = T> + Default, ST15: Column<Table = T> + Default,
ST16: Column<Table = T> + Default, ST17: Column<Table = T> + Default,
ST18: Column<Table = T> + Default, ST19: Column<Table = T> + Default,
ST20: Column<Table = T> + Default, ST21: Column<Table = T> + Default,
(<ST as Expression>::SqlType, <ST1 as Expression>::SqlType,
<ST2 as Expression>::SqlType, <ST3 as Expression>::SqlType,
<ST4 as Expression>::SqlType, <ST5 as Expression>::SqlType,
<ST6 as Expression>::SqlType, <ST7 as Expression>::SqlType,
<ST8 as Expression>::SqlType, <ST9 as Expression>::SqlType,
<ST10 as Expression>::SqlType, <ST11 as Expression>::SqlType,
<ST12 as Expression>::SqlType, <ST13 as Expression>::SqlType,
<ST14 as Expression>::SqlType, <ST15 as Expression>::SqlType,
<ST16 as Expression>::SqlType, <ST17 as Expression>::SqlType,
<ST18 as Expression>::SqlType, <ST19 as Expression>::SqlType,
<ST20 as Expression>::SqlType, <ST21 as Expression>::SqlType): SqlType,
T: Table + StaticQueryFragment, T::Component: QueryFragment<Pg>,
Self: ColumnList {
type Table = T;
type SqlType = crate::dsl::SqlTypeOf<Self>;
fn walk_target(mut pass: crate::query_builder::AstPass<'_, '_, Pg>)
-> crate::QueryResult<()> {
T::STATIC_COMPONENT.walk_ast(pass.reborrow())?;
pass.push_sql("(");
<Self as
ColumnList>::walk_ast(&(ST::default(), ST1::default(),
ST2::default(), ST3::default(), ST4::default(),
ST5::default(), ST6::default(), ST7::default(),
ST8::default(), ST9::default(), ST10::default(),
ST11::default(), ST12::default(), ST13::default(),
ST14::default(), ST15::default(), ST16::default(),
ST17::default(), ST18::default(), ST19::default(),
ST20::default(), ST21::default()), pass.reborrow())?;
pass.push_sql(")");
Ok(())
}
}
impl<T, ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12,
ST13, ST14, ST15, ST16, ST17, ST18, ST19, ST20, ST21, ST22> CopyTarget for
(ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13,
ST14, ST15, ST16, ST17, ST18, ST19, ST20, ST21, ST22) where
ST: Column<Table = T> + Default, ST1: Column<Table = T> + Default,
ST2: Column<Table = T> + Default, ST3: Column<Table = T> + Default,
ST4: Column<Table = T> + Default, ST5: Column<Table = T> + Default,
ST6: Column<Table = T> + Default, ST7: Column<Table = T> + Default,
ST8: Column<Table = T> + Default, ST9: Column<Table = T> + Default,
ST10: Column<Table = T> + Default, ST11: Column<Table = T> + Default,
ST12: Column<Table = T> + Default, ST13: Column<Table = T> + Default,
ST14: Column<Table = T> + Default, ST15: Column<Table = T> + Default,
ST16: Column<Table = T> + Default, ST17: Column<Table = T> + Default,
ST18: Column<Table = T> + Default, ST19: Column<Table = T> + Default,
ST20: Column<Table = T> + Default, ST21: Column<Table = T> + Default,
ST22: Column<Table = T> + Default,
(<ST as Expression>::SqlType, <ST1 as Expression>::SqlType,
<ST2 as Expression>::SqlType, <ST3 as Expression>::SqlType,
<ST4 as Expression>::SqlType, <ST5 as Expression>::SqlType,
<ST6 as Expression>::SqlType, <ST7 as Expression>::SqlType,
<ST8 as Expression>::SqlType, <ST9 as Expression>::SqlType,
<ST10 as Expression>::SqlType, <ST11 as Expression>::SqlType,
<ST12 as Expression>::SqlType, <ST13 as Expression>::SqlType,
<ST14 as Expression>::SqlType, <ST15 as Expression>::SqlType,
<ST16 as Expression>::SqlType, <ST17 as Expression>::SqlType,
<ST18 as Expression>::SqlType, <ST19 as Expression>::SqlType,
<ST20 as Expression>::SqlType, <ST21 as Expression>::SqlType,
<ST22 as Expression>::SqlType): SqlType, T: Table + StaticQueryFragment,
T::Component: QueryFragment<Pg>, Self: ColumnList {
type Table = T;
type SqlType = crate::dsl::SqlTypeOf<Self>;
fn walk_target(mut pass: crate::query_builder::AstPass<'_, '_, Pg>)
-> crate::QueryResult<()> {
T::STATIC_COMPONENT.walk_ast(pass.reborrow())?;
pass.push_sql("(");
<Self as
ColumnList>::walk_ast(&(ST::default(), ST1::default(),
ST2::default(), ST3::default(), ST4::default(),
ST5::default(), ST6::default(), ST7::default(),
ST8::default(), ST9::default(), ST10::default(),
ST11::default(), ST12::default(), ST13::default(),
ST14::default(), ST15::default(), ST16::default(),
ST17::default(), ST18::default(), ST19::default(),
ST20::default(), ST21::default(), ST22::default()),
pass.reborrow())?;
pass.push_sql(")");
Ok(())
}
}
impl<T, ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12,
ST13, ST14, ST15, ST16, ST17, ST18, ST19, ST20, ST21, ST22, ST23>
CopyTarget for
(ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13,
ST14, ST15, ST16, ST17, ST18, ST19, ST20, ST21, ST22, ST23) where
ST: Column<Table = T> + Default, ST1: Column<Table = T> + Default,
ST2: Column<Table = T> + Default, ST3: Column<Table = T> + Default,
ST4: Column<Table = T> + Default, ST5: Column<Table = T> + Default,
ST6: Column<Table = T> + Default, ST7: Column<Table = T> + Default,
ST8: Column<Table = T> + Default, ST9: Column<Table = T> + Default,
ST10: Column<Table = T> + Default, ST11: Column<Table = T> + Default,
ST12: Column<Table = T> + Default, ST13: Column<Table = T> + Default,
ST14: Column<Table = T> + Default, ST15: Column<Table = T> + Default,
ST16: Column<Table = T> + Default, ST17: Column<Table = T> + Default,
ST18: Column<Table = T> + Default, ST19: Column<Table = T> + Default,
ST20: Column<Table = T> + Default, ST21: Column<Table = T> + Default,
ST22: Column<Table = T> + Default, ST23: Column<Table = T> + Default,
(<ST as Expression>::SqlType, <ST1 as Expression>::SqlType,
<ST2 as Expression>::SqlType, <ST3 as Expression>::SqlType,
<ST4 as Expression>::SqlType, <ST5 as Expression>::SqlType,
<ST6 as Expression>::SqlType, <ST7 as Expression>::SqlType,
<ST8 as Expression>::SqlType, <ST9 as Expression>::SqlType,
<ST10 as Expression>::SqlType, <ST11 as Expression>::SqlType,
<ST12 as Expression>::SqlType, <ST13 as Expression>::SqlType,
<ST14 as Expression>::SqlType, <ST15 as Expression>::SqlType,
<ST16 as Expression>::SqlType, <ST17 as Expression>::SqlType,
<ST18 as Expression>::SqlType, <ST19 as Expression>::SqlType,
<ST20 as Expression>::SqlType, <ST21 as Expression>::SqlType,
<ST22 as Expression>::SqlType, <ST23 as Expression>::SqlType): SqlType,
T: Table + StaticQueryFragment, T::Component: QueryFragment<Pg>,
Self: ColumnList {
type Table = T;
type SqlType = crate::dsl::SqlTypeOf<Self>;
fn walk_target(mut pass: crate::query_builder::AstPass<'_, '_, Pg>)
-> crate::QueryResult<()> {
T::STATIC_COMPONENT.walk_ast(pass.reborrow())?;
pass.push_sql("(");
<Self as
ColumnList>::walk_ast(&(ST::default(), ST1::default(),
ST2::default(), ST3::default(), ST4::default(),
ST5::default(), ST6::default(), ST7::default(),
ST8::default(), ST9::default(), ST10::default(),
ST11::default(), ST12::default(), ST13::default(),
ST14::default(), ST15::default(), ST16::default(),
ST17::default(), ST18::default(), ST19::default(),
ST20::default(), ST21::default(), ST22::default(),
ST23::default()), pass.reborrow())?;
pass.push_sql(")");
Ok(())
}
}
impl<T, ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12,
ST13, ST14, ST15, ST16, ST17, ST18, ST19, ST20, ST21, ST22, ST23, ST24>
CopyTarget for
(ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13,
ST14, ST15, ST16, ST17, ST18, ST19, ST20, ST21, ST22, ST23, ST24) where
ST: Column<Table = T> + Default, ST1: Column<Table = T> + Default,
ST2: Column<Table = T> + Default, ST3: Column<Table = T> + Default,
ST4: Column<Table = T> + Default, ST5: Column<Table = T> + Default,
ST6: Column<Table = T> + Default, ST7: Column<Table = T> + Default,
ST8: Column<Table = T> + Default, ST9: Column<Table = T> + Default,
ST10: Column<Table = T> + Default, ST11: Column<Table = T> + Default,
ST12: Column<Table = T> + Default, ST13: Column<Table = T> + Default,
ST14: Column<Table = T> + Default, ST15: Column<Table = T> + Default,
ST16: Column<Table = T> + Default, ST17: Column<Table = T> + Default,
ST18: Column<Table = T> + Default, ST19: Column<Table = T> + Default,
ST20: Column<Table = T> + Default, ST21: Column<Table = T> + Default,
ST22: Column<Table = T> + Default, ST23: Column<Table = T> + Default,
ST24: Column<Table = T> + Default,
(<ST as Expression>::SqlType, <ST1 as Expression>::SqlType,
<ST2 as Expression>::SqlType, <ST3 as Expression>::SqlType,
<ST4 as Expression>::SqlType, <ST5 as Expression>::SqlType,
<ST6 as Expression>::SqlType, <ST7 as Expression>::SqlType,
<ST8 as Expression>::SqlType, <ST9 as Expression>::SqlType,
<ST10 as Expression>::SqlType, <ST11 as Expression>::SqlType,
<ST12 as Expression>::SqlType, <ST13 as Expression>::SqlType,
<ST14 as Expression>::SqlType, <ST15 as Expression>::SqlType,
<ST16 as Expression>::SqlType, <ST17 as Expression>::SqlType,
<ST18 as Expression>::SqlType, <ST19 as Expression>::SqlType,
<ST20 as Expression>::SqlType, <ST21 as Expression>::SqlType,
<ST22 as Expression>::SqlType, <ST23 as Expression>::SqlType,
<ST24 as Expression>::SqlType): SqlType, T: Table + StaticQueryFragment,
T::Component: QueryFragment<Pg>, Self: ColumnList {
type Table = T;
type SqlType = crate::dsl::SqlTypeOf<Self>;
fn walk_target(mut pass: crate::query_builder::AstPass<'_, '_, Pg>)
-> crate::QueryResult<()> {
T::STATIC_COMPONENT.walk_ast(pass.reborrow())?;
pass.push_sql("(");
<Self as
ColumnList>::walk_ast(&(ST::default(), ST1::default(),
ST2::default(), ST3::default(), ST4::default(),
ST5::default(), ST6::default(), ST7::default(),
ST8::default(), ST9::default(), ST10::default(),
ST11::default(), ST12::default(), ST13::default(),
ST14::default(), ST15::default(), ST16::default(),
ST17::default(), ST18::default(), ST19::default(),
ST20::default(), ST21::default(), ST22::default(),
ST23::default(), ST24::default()), pass.reborrow())?;
pass.push_sql(")");
Ok(())
}
}
impl<T, ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12,
ST13, ST14, ST15, ST16, ST17, ST18, ST19, ST20, ST21, ST22, ST23, ST24,
ST25> CopyTarget for
(ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13,
ST14, ST15, ST16, ST17, ST18, ST19, ST20, ST21, ST22, ST23, ST24, ST25)
where ST: Column<Table = T> + Default, ST1: Column<Table = T> + Default,
ST2: Column<Table = T> + Default, ST3: Column<Table = T> + Default,
ST4: Column<Table = T> + Default, ST5: Column<Table = T> + Default,
ST6: Column<Table = T> + Default, ST7: Column<Table = T> + Default,
ST8: Column<Table = T> + Default, ST9: Column<Table = T> + Default,
ST10: Column<Table = T> + Default, ST11: Column<Table = T> + Default,
ST12: Column<Table = T> + Default, ST13: Column<Table = T> + Default,
ST14: Column<Table = T> + Default, ST15: Column<Table = T> + Default,
ST16: Column<Table = T> + Default, ST17: Column<Table = T> + Default,
ST18: Column<Table = T> + Default, ST19: Column<Table = T> + Default,
ST20: Column<Table = T> + Default, ST21: Column<Table = T> + Default,
ST22: Column<Table = T> + Default, ST23: Column<Table = T> + Default,
ST24: Column<Table = T> + Default, ST25: Column<Table = T> + Default,
(<ST as Expression>::SqlType, <ST1 as Expression>::SqlType,
<ST2 as Expression>::SqlType, <ST3 as Expression>::SqlType,
<ST4 as Expression>::SqlType, <ST5 as Expression>::SqlType,
<ST6 as Expression>::SqlType, <ST7 as Expression>::SqlType,
<ST8 as Expression>::SqlType, <ST9 as Expression>::SqlType,
<ST10 as Expression>::SqlType, <ST11 as Expression>::SqlType,
<ST12 as Expression>::SqlType, <ST13 as Expression>::SqlType,
<ST14 as Expression>::SqlType, <ST15 as Expression>::SqlType,
<ST16 as Expression>::SqlType, <ST17 as Expression>::SqlType,
<ST18 as Expression>::SqlType, <ST19 as Expression>::SqlType,
<ST20 as Expression>::SqlType, <ST21 as Expression>::SqlType,
<ST22 as Expression>::SqlType, <ST23 as Expression>::SqlType,
<ST24 as Expression>::SqlType, <ST25 as Expression>::SqlType): SqlType,
T: Table + StaticQueryFragment, T::Component: QueryFragment<Pg>,
Self: ColumnList {
type Table = T;
type SqlType = crate::dsl::SqlTypeOf<Self>;
fn walk_target(mut pass: crate::query_builder::AstPass<'_, '_, Pg>)
-> crate::QueryResult<()> {
T::STATIC_COMPONENT.walk_ast(pass.reborrow())?;
pass.push_sql("(");
<Self as
ColumnList>::walk_ast(&(ST::default(), ST1::default(),
ST2::default(), ST3::default(), ST4::default(),
ST5::default(), ST6::default(), ST7::default(),
ST8::default(), ST9::default(), ST10::default(),
ST11::default(), ST12::default(), ST13::default(),
ST14::default(), ST15::default(), ST16::default(),
ST17::default(), ST18::default(), ST19::default(),
ST20::default(), ST21::default(), ST22::default(),
ST23::default(), ST24::default(), ST25::default()),
pass.reborrow())?;
pass.push_sql(")");
Ok(())
}
}
impl<T, ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12,
ST13, ST14, ST15, ST16, ST17, ST18, ST19, ST20, ST21, ST22, ST23, ST24,
ST25, ST26> CopyTarget for
(ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13,
ST14, ST15, ST16, ST17, ST18, ST19, ST20, ST21, ST22, ST23, ST24, ST25,
ST26) where ST: Column<Table = T> + Default, ST1: Column<Table = T> +
Default, ST2: Column<Table = T> + Default, ST3: Column<Table = T> +
Default, ST4: Column<Table = T> + Default, ST5: Column<Table = T> +
Default, ST6: Column<Table = T> + Default, ST7: Column<Table = T> +
Default, ST8: Column<Table = T> + Default, ST9: Column<Table = T> +
Default, ST10: Column<Table = T> + Default, ST11: Column<Table = T> +
Default, ST12: Column<Table = T> + Default, ST13: Column<Table = T> +
Default, ST14: Column<Table = T> + Default, ST15: Column<Table = T> +
Default, ST16: Column<Table = T> + Default, ST17: Column<Table = T> +
Default, ST18: Column<Table = T> + Default, ST19: Column<Table = T> +
Default, ST20: Column<Table = T> + Default, ST21: Column<Table = T> +
Default, ST22: Column<Table = T> + Default, ST23: Column<Table = T> +
Default, ST24: Column<Table = T> + Default, ST25: Column<Table = T> +
Default, ST26: Column<Table = T> + Default,
(<ST as Expression>::SqlType, <ST1 as Expression>::SqlType,
<ST2 as Expression>::SqlType, <ST3 as Expression>::SqlType,
<ST4 as Expression>::SqlType, <ST5 as Expression>::SqlType,
<ST6 as Expression>::SqlType, <ST7 as Expression>::SqlType,
<ST8 as Expression>::SqlType, <ST9 as Expression>::SqlType,
<ST10 as Expression>::SqlType, <ST11 as Expression>::SqlType,
<ST12 as Expression>::SqlType, <ST13 as Expression>::SqlType,
<ST14 as Expression>::SqlType, <ST15 as Expression>::SqlType,
<ST16 as Expression>::SqlType, <ST17 as Expression>::SqlType,
<ST18 as Expression>::SqlType, <ST19 as Expression>::SqlType,
<ST20 as Expression>::SqlType, <ST21 as Expression>::SqlType,
<ST22 as Expression>::SqlType, <ST23 as Expression>::SqlType,
<ST24 as Expression>::SqlType, <ST25 as Expression>::SqlType,
<ST26 as Expression>::SqlType): SqlType, T: Table + StaticQueryFragment,
T::Component: QueryFragment<Pg>, Self: ColumnList {
type Table = T;
type SqlType = crate::dsl::SqlTypeOf<Self>;
fn walk_target(mut pass: crate::query_builder::AstPass<'_, '_, Pg>)
-> crate::QueryResult<()> {
T::STATIC_COMPONENT.walk_ast(pass.reborrow())?;
pass.push_sql("(");
<Self as
ColumnList>::walk_ast(&(ST::default(), ST1::default(),
ST2::default(), ST3::default(), ST4::default(),
ST5::default(), ST6::default(), ST7::default(),
ST8::default(), ST9::default(), ST10::default(),
ST11::default(), ST12::default(), ST13::default(),
ST14::default(), ST15::default(), ST16::default(),
ST17::default(), ST18::default(), ST19::default(),
ST20::default(), ST21::default(), ST22::default(),
ST23::default(), ST24::default(), ST25::default(),
ST26::default()), pass.reborrow())?;
pass.push_sql(")");
Ok(())
}
}
impl<T, ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12,
ST13, ST14, ST15, ST16, ST17, ST18, ST19, ST20, ST21, ST22, ST23, ST24,
ST25, ST26, ST27> CopyTarget for
(ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13,
ST14, ST15, ST16, ST17, ST18, ST19, ST20, ST21, ST22, ST23, ST24, ST25,
ST26, ST27) where ST: Column<Table = T> + Default,
ST1: Column<Table = T> + Default, ST2: Column<Table = T> + Default,
ST3: Column<Table = T> + Default, ST4: Column<Table = T> + Default,
ST5: Column<Table = T> + Default, ST6: Column<Table = T> + Default,
ST7: Column<Table = T> + Default, ST8: Column<Table = T> + Default,
ST9: Column<Table = T> + Default, ST10: Column<Table = T> + Default,
ST11: Column<Table = T> + Default, ST12: Column<Table = T> + Default,
ST13: Column<Table = T> + Default, ST14: Column<Table = T> + Default,
ST15: Column<Table = T> + Default, ST16: Column<Table = T> + Default,
ST17: Column<Table = T> + Default, ST18: Column<Table = T> + Default,
ST19: Column<Table = T> + Default, ST20: Column<Table = T> + Default,
ST21: Column<Table = T> + Default, ST22: Column<Table = T> + Default,
ST23: Column<Table = T> + Default, ST24: Column<Table = T> + Default,
ST25: Column<Table = T> + Default, ST26: Column<Table = T> + Default,
ST27: Column<Table = T> + Default,
(<ST as Expression>::SqlType, <ST1 as Expression>::SqlType,
<ST2 as Expression>::SqlType, <ST3 as Expression>::SqlType,
<ST4 as Expression>::SqlType, <ST5 as Expression>::SqlType,
<ST6 as Expression>::SqlType, <ST7 as Expression>::SqlType,
<ST8 as Expression>::SqlType, <ST9 as Expression>::SqlType,
<ST10 as Expression>::SqlType, <ST11 as Expression>::SqlType,
<ST12 as Expression>::SqlType, <ST13 as Expression>::SqlType,
<ST14 as Expression>::SqlType, <ST15 as Expression>::SqlType,
<ST16 as Expression>::SqlType, <ST17 as Expression>::SqlType,
<ST18 as Expression>::SqlType, <ST19 as Expression>::SqlType,
<ST20 as Expression>::SqlType, <ST21 as Expression>::SqlType,
<ST22 as Expression>::SqlType, <ST23 as Expression>::SqlType,
<ST24 as Expression>::SqlType, <ST25 as Expression>::SqlType,
<ST26 as Expression>::SqlType, <ST27 as Expression>::SqlType): SqlType,
T: Table + StaticQueryFragment, T::Component: QueryFragment<Pg>,
Self: ColumnList {
type Table = T;
type SqlType = crate::dsl::SqlTypeOf<Self>;
fn walk_target(mut pass: crate::query_builder::AstPass<'_, '_, Pg>)
-> crate::QueryResult<()> {
T::STATIC_COMPONENT.walk_ast(pass.reborrow())?;
pass.push_sql("(");
<Self as
ColumnList>::walk_ast(&(ST::default(), ST1::default(),
ST2::default(), ST3::default(), ST4::default(),
ST5::default(), ST6::default(), ST7::default(),
ST8::default(), ST9::default(), ST10::default(),
ST11::default(), ST12::default(), ST13::default(),
ST14::default(), ST15::default(), ST16::default(),
ST17::default(), ST18::default(), ST19::default(),
ST20::default(), ST21::default(), ST22::default(),
ST23::default(), ST24::default(), ST25::default(),
ST26::default(), ST27::default()), pass.reborrow())?;
pass.push_sql(")");
Ok(())
}
}
impl<T, ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12,
ST13, ST14, ST15, ST16, ST17, ST18, ST19, ST20, ST21, ST22, ST23, ST24,
ST25, ST26, ST27, ST28> CopyTarget for
(ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13,
ST14, ST15, ST16, ST17, ST18, ST19, ST20, ST21, ST22, ST23, ST24, ST25,
ST26, ST27, ST28) where ST: Column<Table = T> + Default,
ST1: Column<Table = T> + Default, ST2: Column<Table = T> + Default,
ST3: Column<Table = T> + Default, ST4: Column<Table = T> + Default,
ST5: Column<Table = T> + Default, ST6: Column<Table = T> + Default,
ST7: Column<Table = T> + Default, ST8: Column<Table = T> + Default,
ST9: Column<Table = T> + Default, ST10: Column<Table = T> + Default,
ST11: Column<Table = T> + Default, ST12: Column<Table = T> + Default,
ST13: Column<Table = T> + Default, ST14: Column<Table = T> + Default,
ST15: Column<Table = T> + Default, ST16: Column<Table = T> + Default,
ST17: Column<Table = T> + Default, ST18: Column<Table = T> + Default,
ST19: Column<Table = T> + Default, ST20: Column<Table = T> + Default,
ST21: Column<Table = T> + Default, ST22: Column<Table = T> + Default,
ST23: Column<Table = T> + Default, ST24: Column<Table = T> + Default,
ST25: Column<Table = T> + Default, ST26: Column<Table = T> + Default,
ST27: Column<Table = T> + Default, ST28: Column<Table = T> + Default,
(<ST as Expression>::SqlType, <ST1 as Expression>::SqlType,
<ST2 as Expression>::SqlType, <ST3 as Expression>::SqlType,
<ST4 as Expression>::SqlType, <ST5 as Expression>::SqlType,
<ST6 as Expression>::SqlType, <ST7 as Expression>::SqlType,
<ST8 as Expression>::SqlType, <ST9 as Expression>::SqlType,
<ST10 as Expression>::SqlType, <ST11 as Expression>::SqlType,
<ST12 as Expression>::SqlType, <ST13 as Expression>::SqlType,
<ST14 as Expression>::SqlType, <ST15 as Expression>::SqlType,
<ST16 as Expression>::SqlType, <ST17 as Expression>::SqlType,
<ST18 as Expression>::SqlType, <ST19 as Expression>::SqlType,
<ST20 as Expression>::SqlType, <ST21 as Expression>::SqlType,
<ST22 as Expression>::SqlType, <ST23 as Expression>::SqlType,
<ST24 as Expression>::SqlType, <ST25 as Expression>::SqlType,
<ST26 as Expression>::SqlType, <ST27 as Expression>::SqlType,
<ST28 as Expression>::SqlType): SqlType, T: Table + StaticQueryFragment,
T::Component: QueryFragment<Pg>, Self: ColumnList {
type Table = T;
type SqlType = crate::dsl::SqlTypeOf<Self>;
fn walk_target(mut pass: crate::query_builder::AstPass<'_, '_, Pg>)
-> crate::QueryResult<()> {
T::STATIC_COMPONENT.walk_ast(pass.reborrow())?;
pass.push_sql("(");
<Self as
ColumnList>::walk_ast(&(ST::default(), ST1::default(),
ST2::default(), ST3::default(), ST4::default(),
ST5::default(), ST6::default(), ST7::default(),
ST8::default(), ST9::default(), ST10::default(),
ST11::default(), ST12::default(), ST13::default(),
ST14::default(), ST15::default(), ST16::default(),
ST17::default(), ST18::default(), ST19::default(),
ST20::default(), ST21::default(), ST22::default(),
ST23::default(), ST24::default(), ST25::default(),
ST26::default(), ST27::default(), ST28::default()),
pass.reborrow())?;
pass.push_sql(")");
Ok(())
}
}
impl<T, ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12,
ST13, ST14, ST15, ST16, ST17, ST18, ST19, ST20, ST21, ST22, ST23, ST24,
ST25, ST26, ST27, ST28, ST29> CopyTarget for
(ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13,
ST14, ST15, ST16, ST17, ST18, ST19, ST20, ST21, ST22, ST23, ST24, ST25,
ST26, ST27, ST28, ST29) where ST: Column<Table = T> + Default,
ST1: Column<Table = T> + Default, ST2: Column<Table = T> + Default,
ST3: Column<Table = T> + Default, ST4: Column<Table = T> + Default,
ST5: Column<Table = T> + Default, ST6: Column<Table = T> + Default,
ST7: Column<Table = T> + Default, ST8: Column<Table = T> + Default,
ST9: Column<Table = T> + Default, ST10: Column<Table = T> + Default,
ST11: Column<Table = T> + Default, ST12: Column<Table = T> + Default,
ST13: Column<Table = T> + Default, ST14: Column<Table = T> + Default,
ST15: Column<Table = T> + Default, ST16: Column<Table = T> + Default,
ST17: Column<Table = T> + Default, ST18: Column<Table = T> + Default,
ST19: Column<Table = T> + Default, ST20: Column<Table = T> + Default,
ST21: Column<Table = T> + Default, ST22: Column<Table = T> + Default,
ST23: Column<Table = T> + Default, ST24: Column<Table = T> + Default,
ST25: Column<Table = T> + Default, ST26: Column<Table = T> + Default,
ST27: Column<Table = T> + Default, ST28: Column<Table = T> + Default,
ST29: Column<Table = T> + Default,
(<ST as Expression>::SqlType, <ST1 as Expression>::SqlType,
<ST2 as Expression>::SqlType, <ST3 as Expression>::SqlType,
<ST4 as Expression>::SqlType, <ST5 as Expression>::SqlType,
<ST6 as Expression>::SqlType, <ST7 as Expression>::SqlType,
<ST8 as Expression>::SqlType, <ST9 as Expression>::SqlType,
<ST10 as Expression>::SqlType, <ST11 as Expression>::SqlType,
<ST12 as Expression>::SqlType, <ST13 as Expression>::SqlType,
<ST14 as Expression>::SqlType, <ST15 as Expression>::SqlType,
<ST16 as Expression>::SqlType, <ST17 as Expression>::SqlType,
<ST18 as Expression>::SqlType, <ST19 as Expression>::SqlType,
<ST20 as Expression>::SqlType, <ST21 as Expression>::SqlType,
<ST22 as Expression>::SqlType, <ST23 as Expression>::SqlType,
<ST24 as Expression>::SqlType, <ST25 as Expression>::SqlType,
<ST26 as Expression>::SqlType, <ST27 as Expression>::SqlType,
<ST28 as Expression>::SqlType, <ST29 as Expression>::SqlType): SqlType,
T: Table + StaticQueryFragment, T::Component: QueryFragment<Pg>,
Self: ColumnList {
type Table = T;
type SqlType = crate::dsl::SqlTypeOf<Self>;
fn walk_target(mut pass: crate::query_builder::AstPass<'_, '_, Pg>)
-> crate::QueryResult<()> {
T::STATIC_COMPONENT.walk_ast(pass.reborrow())?;
pass.push_sql("(");
<Self as
ColumnList>::walk_ast(&(ST::default(), ST1::default(),
ST2::default(), ST3::default(), ST4::default(),
ST5::default(), ST6::default(), ST7::default(),
ST8::default(), ST9::default(), ST10::default(),
ST11::default(), ST12::default(), ST13::default(),
ST14::default(), ST15::default(), ST16::default(),
ST17::default(), ST18::default(), ST19::default(),
ST20::default(), ST21::default(), ST22::default(),
ST23::default(), ST24::default(), ST25::default(),
ST26::default(), ST27::default(), ST28::default(),
ST29::default()), pass.reborrow())?;
pass.push_sql(")");
Ok(())
}
}
impl<T, ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12,
ST13, ST14, ST15, ST16, ST17, ST18, ST19, ST20, ST21, ST22, ST23, ST24,
ST25, ST26, ST27, ST28, ST29, ST30> CopyTarget for
(ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13,
ST14, ST15, ST16, ST17, ST18, ST19, ST20, ST21, ST22, ST23, ST24, ST25,
ST26, ST27, ST28, ST29, ST30) where ST: Column<Table = T> + Default,
ST1: Column<Table = T> + Default, ST2: Column<Table = T> + Default,
ST3: Column<Table = T> + Default, ST4: Column<Table = T> + Default,
ST5: Column<Table = T> + Default, ST6: Column<Table = T> + Default,
ST7: Column<Table = T> + Default, ST8: Column<Table = T> + Default,
ST9: Column<Table = T> + Default, ST10: Column<Table = T> + Default,
ST11: Column<Table = T> + Default, ST12: Column<Table = T> + Default,
ST13: Column<Table = T> + Default, ST14: Column<Table = T> + Default,
ST15: Column<Table = T> + Default, ST16: Column<Table = T> + Default,
ST17: Column<Table = T> + Default, ST18: Column<Table = T> + Default,
ST19: Column<Table = T> + Default, ST20: Column<Table = T> + Default,
ST21: Column<Table = T> + Default, ST22: Column<Table = T> + Default,
ST23: Column<Table = T> + Default, ST24: Column<Table = T> + Default,
ST25: Column<Table = T> + Default, ST26: Column<Table = T> + Default,
ST27: Column<Table = T> + Default, ST28: Column<Table = T> + Default,
ST29: Column<Table = T> + Default, ST30: Column<Table = T> + Default,
(<ST as Expression>::SqlType, <ST1 as Expression>::SqlType,
<ST2 as Expression>::SqlType, <ST3 as Expression>::SqlType,
<ST4 as Expression>::SqlType, <ST5 as Expression>::SqlType,
<ST6 as Expression>::SqlType, <ST7 as Expression>::SqlType,
<ST8 as Expression>::SqlType, <ST9 as Expression>::SqlType,
<ST10 as Expression>::SqlType, <ST11 as Expression>::SqlType,
<ST12 as Expression>::SqlType, <ST13 as Expression>::SqlType,
<ST14 as Expression>::SqlType, <ST15 as Expression>::SqlType,
<ST16 as Expression>::SqlType, <ST17 as Expression>::SqlType,
<ST18 as Expression>::SqlType, <ST19 as Expression>::SqlType,
<ST20 as Expression>::SqlType, <ST21 as Expression>::SqlType,
<ST22 as Expression>::SqlType, <ST23 as Expression>::SqlType,
<ST24 as Expression>::SqlType, <ST25 as Expression>::SqlType,
<ST26 as Expression>::SqlType, <ST27 as Expression>::SqlType,
<ST28 as Expression>::SqlType, <ST29 as Expression>::SqlType,
<ST30 as Expression>::SqlType): SqlType, T: Table + StaticQueryFragment,
T::Component: QueryFragment<Pg>, Self: ColumnList {
type Table = T;
type SqlType = crate::dsl::SqlTypeOf<Self>;
fn walk_target(mut pass: crate::query_builder::AstPass<'_, '_, Pg>)
-> crate::QueryResult<()> {
T::STATIC_COMPONENT.walk_ast(pass.reborrow())?;
pass.push_sql("(");
<Self as
ColumnList>::walk_ast(&(ST::default(), ST1::default(),
ST2::default(), ST3::default(), ST4::default(),
ST5::default(), ST6::default(), ST7::default(),
ST8::default(), ST9::default(), ST10::default(),
ST11::default(), ST12::default(), ST13::default(),
ST14::default(), ST15::default(), ST16::default(),
ST17::default(), ST18::default(), ST19::default(),
ST20::default(), ST21::default(), ST22::default(),
ST23::default(), ST24::default(), ST25::default(),
ST26::default(), ST27::default(), ST28::default(),
ST29::default(), ST30::default()), pass.reborrow())?;
pass.push_sql(")");
Ok(())
}
}
impl<T, ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12,
ST13, ST14, ST15, ST16, ST17, ST18, ST19, ST20, ST21, ST22, ST23, ST24,
ST25, ST26, ST27, ST28, ST29, ST30, ST31> CopyTarget for
(ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13,
ST14, ST15, ST16, ST17, ST18, ST19, ST20, ST21, ST22, ST23, ST24, ST25,
ST26, ST27, ST28, ST29, ST30, ST31) where ST: Column<Table = T> + Default,
ST1: Column<Table = T> + Default, ST2: Column<Table = T> + Default,
ST3: Column<Table = T> + Default, ST4: Column<Table = T> + Default,
ST5: Column<Table = T> + Default, ST6: Column<Table = T> + Default,
ST7: Column<Table = T> + Default, ST8: Column<Table = T> + Default,
ST9: Column<Table = T> + Default, ST10: Column<Table = T> + Default,
ST11: Column<Table = T> + Default, ST12: Column<Table = T> + Default,
ST13: Column<Table = T> + Default, ST14: Column<Table = T> + Default,
ST15: Column<Table = T> + Default, ST16: Column<Table = T> + Default,
ST17: Column<Table = T> + Default, ST18: Column<Table = T> + Default,
ST19: Column<Table = T> + Default, ST20: Column<Table = T> + Default,
ST21: Column<Table = T> + Default, ST22: Column<Table = T> + Default,
ST23: Column<Table = T> + Default, ST24: Column<Table = T> + Default,
ST25: Column<Table = T> + Default, ST26: Column<Table = T> + Default,
ST27: Column<Table = T> + Default, ST28: Column<Table = T> + Default,
ST29: Column<Table = T> + Default, ST30: Column<Table = T> + Default,
ST31: Column<Table = T> + Default,
(<ST as Expression>::SqlType, <ST1 as Expression>::SqlType,
<ST2 as Expression>::SqlType, <ST3 as Expression>::SqlType,
<ST4 as Expression>::SqlType, <ST5 as Expression>::SqlType,
<ST6 as Expression>::SqlType, <ST7 as Expression>::SqlType,
<ST8 as Expression>::SqlType, <ST9 as Expression>::SqlType,
<ST10 as Expression>::SqlType, <ST11 as Expression>::SqlType,
<ST12 as Expression>::SqlType, <ST13 as Expression>::SqlType,
<ST14 as Expression>::SqlType, <ST15 as Expression>::SqlType,
<ST16 as Expression>::SqlType, <ST17 as Expression>::SqlType,
<ST18 as Expression>::SqlType, <ST19 as Expression>::SqlType,
<ST20 as Expression>::SqlType, <ST21 as Expression>::SqlType,
<ST22 as Expression>::SqlType, <ST23 as Expression>::SqlType,
<ST24 as Expression>::SqlType, <ST25 as Expression>::SqlType,
<ST26 as Expression>::SqlType, <ST27 as Expression>::SqlType,
<ST28 as Expression>::SqlType, <ST29 as Expression>::SqlType,
<ST30 as Expression>::SqlType, <ST31 as Expression>::SqlType): SqlType,
T: Table + StaticQueryFragment, T::Component: QueryFragment<Pg>,
Self: ColumnList {
type Table = T;
type SqlType = crate::dsl::SqlTypeOf<Self>;
fn walk_target(mut pass: crate::query_builder::AstPass<'_, '_, Pg>)
-> crate::QueryResult<()> {
T::STATIC_COMPONENT.walk_ast(pass.reborrow())?;
pass.push_sql("(");
<Self as
ColumnList>::walk_ast(&(ST::default(), ST1::default(),
ST2::default(), ST3::default(), ST4::default(),
ST5::default(), ST6::default(), ST7::default(),
ST8::default(), ST9::default(), ST10::default(),
ST11::default(), ST12::default(), ST13::default(),
ST14::default(), ST15::default(), ST16::default(),
ST17::default(), ST18::default(), ST19::default(),
ST20::default(), ST21::default(), ST22::default(),
ST23::default(), ST24::default(), ST25::default(),
ST26::default(), ST27::default(), ST28::default(),
ST29::default(), ST30::default(), ST31::default()),
pass.reborrow())?;
pass.push_sql(")");
Ok(())
}
}crate::for_each_tuple!(copy_target_for_columns);