Skip to main content

emf_core_base_rs/fn_caster/
version.rs

1//! Casters for the version api.
2use crate::ffi::version::api;
3use crate::ffi::{CBaseFn, FnId};
4use crate::fn_caster::FnCaster;
5
6/// Caster for [FnId::VersionNewShort]
7#[derive(Debug)]
8pub struct NewShortCaster {}
9
10/// Caster for [FnId::VersionNewLong]
11#[derive(Debug)]
12pub struct NewLongCaster {}
13
14/// Caster for [FnId::VersionNewFull]
15#[derive(Debug)]
16pub struct NewFullCaster {}
17
18/// Caster for [FnId::VersionFromString]
19#[derive(Debug)]
20pub struct FromStringCaster {}
21
22/// Caster for [FnId::VersionStringLengthShort]
23#[derive(Debug)]
24pub struct StringLengthShortCaster {}
25
26/// Caster for [FnId::VersionStringLengthLong]
27#[derive(Debug)]
28pub struct StringLengthLongCaster {}
29
30/// Caster for [FnId::VersionStringLengthFull]
31#[derive(Debug)]
32pub struct StringLengthFullCaster {}
33
34/// Caster for [FnId::VersionAsStringShort]
35#[derive(Debug)]
36pub struct AsStringShortCaster {}
37
38/// Caster for [FnId::VersionAsStringLong]
39#[derive(Debug)]
40pub struct AsStringLongCaster {}
41
42/// Caster for [FnId::VersionAsStringFull]
43#[derive(Debug)]
44pub struct AsStringFullCaster {}
45
46/// Caster for [FnId::VersionStringIsValid]
47#[derive(Debug)]
48pub struct StringIsValidCaster {}
49
50/// Caster for [FnId::VersionCompare]
51#[derive(Debug)]
52pub struct CompareCaster {}
53
54/// Caster for [FnId::VersionCompareWeak]
55#[derive(Debug)]
56pub struct CompareWeakCaster {}
57
58/// Caster for [FnId::VersionCompareStrong]
59#[derive(Debug)]
60pub struct CompareStrongCaster {}
61
62/// Caster for [FnId::VersionIsCompatible]
63#[derive(Debug)]
64pub struct IsCompatibleCaster {}
65
66transmute_caster!(NewShortCaster, api::NewShortFn, FnId::VersionNewShort);
67
68transmute_caster!(NewLongCaster, api::NewLongFn, FnId::VersionNewLong);
69
70transmute_caster!(NewFullCaster, api::NewFullFn, FnId::VersionNewFull);
71
72transmute_caster!(FromStringCaster, api::FromStringFn, FnId::VersionFromString);
73
74transmute_caster!(
75    StringLengthShortCaster,
76    api::StringLengthShortFn,
77    FnId::VersionStringLengthShort
78);
79
80transmute_caster!(
81    StringLengthLongCaster,
82    api::StringLengthLongFn,
83    FnId::VersionStringLengthLong
84);
85
86transmute_caster!(
87    StringLengthFullCaster,
88    api::StringLengthFullFn,
89    FnId::VersionStringLengthFull
90);
91
92transmute_caster!(
93    AsStringShortCaster,
94    api::AsStringShortFn,
95    FnId::VersionAsStringShort
96);
97
98transmute_caster!(
99    AsStringLongCaster,
100    api::AsStringLongFn,
101    FnId::VersionAsStringLong
102);
103
104transmute_caster!(
105    AsStringFullCaster,
106    api::AsStringFullFn,
107    FnId::VersionAsStringFull
108);
109
110transmute_caster!(
111    StringIsValidCaster,
112    api::StringIsValidFn,
113    FnId::VersionStringIsValid
114);
115
116transmute_caster!(CompareCaster, api::CompareFn, FnId::VersionCompare);
117
118transmute_caster!(
119    CompareWeakCaster,
120    api::CompareWeakFn,
121    FnId::VersionCompareWeak
122);
123
124transmute_caster!(
125    CompareStrongCaster,
126    api::CompareStrongFn,
127    FnId::VersionCompareStrong
128);
129
130transmute_caster!(
131    IsCompatibleCaster,
132    api::IsCompatibleFn,
133    FnId::VersionIsCompatible
134);