1use sys::*;
2
3pub trait VersionOption {}
4
5pub unsafe trait Version: VersionOption {
7 fn constant() -> OdbcVersion;
9}
10
11#[derive(Debug, Clone, Copy)]
13pub struct NoVersion;
14
15impl VersionOption for NoVersion {}
16
17#[derive(Debug, Clone, Copy)]
19pub struct Odbc3;
20
21#[derive(Debug, Clone, Copy)]
23pub struct Odbc3m8;
24
25impl<V: Version> VersionOption for V {}
26
27unsafe impl Version for Odbc3 {
28 fn constant() -> OdbcVersion {
29 SQL_OV_ODBC3
30 }
31}
32
33unsafe impl Version for Odbc3m8 {
34 fn constant() -> OdbcVersion {
35 SQL_OV_ODBC3_80
36 }
37}