src/bisection_tree/btfn.rs

branch
dev
changeset 152
dab30b331f49
parent 150
c4e394a9c84c
equal deleted inserted replaced
151:402d717bb5c0 152:dab30b331f49
1 use crate::instance::{ClosedSpace, Instance, Ownable, Space}; 1 use crate::instance::{ClosedSpace, Instance, MyCow, Ownable, Space};
2 use crate::mapping::{BasicDecomposition, DifferentiableImpl, DifferentiableMapping, Mapping}; 2 use crate::mapping::{BasicDecomposition, DifferentiableImpl, DifferentiableMapping, Mapping};
3 use crate::types::Float; 3 use crate::types::Float;
4 use numeric_literals::replace_float_literals; 4 use numeric_literals::replace_float_literals;
5 use std::iter::Sum; 5 use std::iter::Sum;
6 use std::marker::PhantomData; 6 use std::marker::PhantomData;
46 46
47 fn into_owned(self) -> Self::OwnedVariant { 47 fn into_owned(self) -> Self::OwnedVariant {
48 self 48 self
49 } 49 }
50 50
51 /// Returns an owned instance of a reference.
52 fn clone_owned(&self) -> Self::OwnedVariant { 51 fn clone_owned(&self) -> Self::OwnedVariant {
53 self.clone() 52 self.clone()
53 }
54
55 fn owned_cow<'b>(self) -> MyCow<'b, Self::OwnedVariant>
56 where
57 Self: 'b,
58 {
59 MyCow::Owned(self.into_owned())
60 }
61
62 fn ref_owned_cow<'b>(&'b self) -> MyCow<'b, Self::OwnedVariant>
63 where
64 Self: 'b,
65 {
66 MyCow::Owned(self.into_owned())
54 } 67 }
55 } 68 }
56 69
57 impl<F: Float, G, BT, const N: usize> Space for BTFN<F, G, BT, N> 70 impl<F: Float, G, BT, const N: usize> Space for BTFN<F, G, BT, N>
58 where 71 where

mercurial