smartstring/
casts.rs

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at http://mozilla.org/MPL/2.0/.

use crate::{boxed::BoxedString, inline::InlineString};

pub(crate) enum StringCast<'a> {
    Boxed(&'a BoxedString),
    Inline(&'a InlineString),
}

pub(crate) enum StringCastMut<'a> {
    Boxed(&'a mut BoxedString),
    Inline(&'a mut InlineString),
}

pub(crate) enum StringCastInto {
    Boxed(BoxedString),
    Inline(InlineString),
}