qdrant_client/builders/
max_optimization_threads_builder.rs1use crate::qdrant::*;
2
3#[must_use]
9#[derive(Clone)]
10pub struct MaxOptimizationThreadsBuilder {
11 pub(crate) inner: MaxOptimizationThreads,
12}
13
14impl MaxOptimizationThreadsBuilder {
15 #[inline]
19 pub fn threads(threads: u64) -> Self {
20 Self {
21 inner: MaxOptimizationThreads::from(threads),
22 }
23 }
24
25 #[inline]
27 pub fn disabled() -> Self {
28 Self::threads(0)
29 }
30
31 #[inline]
33 pub fn auto() -> Self {
34 Self {
35 inner: MaxOptimizationThreads::from(max_optimization_threads::Variant::Setting(
36 max_optimization_threads::Setting::Auto as i32,
37 )),
38 }
39 }
40}
41
42impl From<MaxOptimizationThreadsBuilder> for MaxOptimizationThreads {
43 fn from(value: MaxOptimizationThreadsBuilder) -> Self {
44 value.build()
45 }
46}
47
48impl MaxOptimizationThreadsBuilder {
49 pub fn build(self) -> MaxOptimizationThreads {
50 self.inner
51 }
52}
53
54impl Default for MaxOptimizationThreadsBuilder {
55 fn default() -> Self {
56 Self::auto()
57 }
58}
59
60impl From<u64> for MaxOptimizationThreads {
61 fn from(threads: u64) -> Self {
62 MaxOptimizationThreads {
63 variant: Some(max_optimization_threads::Variant::from(threads)),
64 }
65 }
66}
67
68impl From<max_optimization_threads::Variant> for MaxOptimizationThreads {
69 fn from(setting: max_optimization_threads::Variant) -> Self {
70 MaxOptimizationThreads {
71 variant: Some(setting),
72 }
73 }
74}
75
76impl From<u64> for max_optimization_threads::Variant {
77 fn from(threads: u64) -> Self {
78 Self::Value(threads)
79 }
80}
81
82impl From<max_optimization_threads::Setting> for max_optimization_threads::Variant {
83 fn from(setting: max_optimization_threads::Setting) -> Self {
84 Self::Setting(setting as i32)
85 }
86}