rstsr_lapack_ffi/blas/
dyload_initializer.rs

1//! Library initializer implementation for dynamic-loading.
2//!
3//! This file is generated automatically.
4
5use super::*;
6use libloading::{Library, Symbol};
7
8unsafe fn get_symbol<'f, F>(libs: &'f [Library], name: &[u8]) -> Option<Symbol<'f, F>> {
9    libs.iter().find_map(|lib| lib.get::<F>(name).ok())
10}
11
12impl DyLoadLib {
13    pub unsafe fn new(libs: Vec<libloading::Library>, libs_path: Vec<String>) -> DyLoadLib {
14        let mut result = DyLoadLib {
15            __libraries: vec![],      // dummy here, set this field later
16            __libraries_path: vec![], // dummy here, set this field later
17            xerbla_: get_symbol(&libs, b"xerbla_\0").map(|sym| *sym),
18            srot_: get_symbol(&libs, b"srot_\0").map(|sym| *sym),
19            srotg_: get_symbol(&libs, b"srotg_\0").map(|sym| *sym),
20            srotm_: get_symbol(&libs, b"srotm_\0").map(|sym| *sym),
21            srotmg_: get_symbol(&libs, b"srotmg_\0").map(|sym| *sym),
22            sswap_: get_symbol(&libs, b"sswap_\0").map(|sym| *sym),
23            scopy_: get_symbol(&libs, b"scopy_\0").map(|sym| *sym),
24            saxpy_: get_symbol(&libs, b"saxpy_\0").map(|sym| *sym),
25            sdotsub_: get_symbol(&libs, b"sdotsub_\0").map(|sym| *sym),
26            sdsdotsub_: get_symbol(&libs, b"sdsdotsub_\0").map(|sym| *sym),
27            sscal_: get_symbol(&libs, b"sscal_\0").map(|sym| *sym),
28            snrm2sub_: get_symbol(&libs, b"snrm2sub_\0").map(|sym| *sym),
29            sasumsub_: get_symbol(&libs, b"sasumsub_\0").map(|sym| *sym),
30            isamaxsub_: get_symbol(&libs, b"isamaxsub_\0").map(|sym| *sym),
31            drot_: get_symbol(&libs, b"drot_\0").map(|sym| *sym),
32            drotg_: get_symbol(&libs, b"drotg_\0").map(|sym| *sym),
33            drotm_: get_symbol(&libs, b"drotm_\0").map(|sym| *sym),
34            drotmg_: get_symbol(&libs, b"drotmg_\0").map(|sym| *sym),
35            dswap_: get_symbol(&libs, b"dswap_\0").map(|sym| *sym),
36            dcopy_: get_symbol(&libs, b"dcopy_\0").map(|sym| *sym),
37            daxpy_: get_symbol(&libs, b"daxpy_\0").map(|sym| *sym),
38            dsdotsub_: get_symbol(&libs, b"dsdotsub_\0").map(|sym| *sym),
39            ddotsub_: get_symbol(&libs, b"ddotsub_\0").map(|sym| *sym),
40            dscal_: get_symbol(&libs, b"dscal_\0").map(|sym| *sym),
41            dnrm2sub_: get_symbol(&libs, b"dnrm2sub_\0").map(|sym| *sym),
42            dasumsub_: get_symbol(&libs, b"dasumsub_\0").map(|sym| *sym),
43            idamaxsub_: get_symbol(&libs, b"idamaxsub_\0").map(|sym| *sym),
44            crotg_: get_symbol(&libs, b"crotg_\0").map(|sym| *sym),
45            csrot_: get_symbol(&libs, b"csrot_\0").map(|sym| *sym),
46            cswap_: get_symbol(&libs, b"cswap_\0").map(|sym| *sym),
47            ccopy_: get_symbol(&libs, b"ccopy_\0").map(|sym| *sym),
48            caxpy_: get_symbol(&libs, b"caxpy_\0").map(|sym| *sym),
49            cdotcsub_: get_symbol(&libs, b"cdotcsub_\0").map(|sym| *sym),
50            cdotusub_: get_symbol(&libs, b"cdotusub_\0").map(|sym| *sym),
51            cscal_: get_symbol(&libs, b"cscal_\0").map(|sym| *sym),
52            icamaxsub_: get_symbol(&libs, b"icamaxsub_\0").map(|sym| *sym),
53            csscal_: get_symbol(&libs, b"csscal_\0").map(|sym| *sym),
54            scnrm2sub_: get_symbol(&libs, b"scnrm2sub_\0").map(|sym| *sym),
55            scasumsub_: get_symbol(&libs, b"scasumsub_\0").map(|sym| *sym),
56            scabs1sub_: get_symbol(&libs, b"scabs1sub_\0").map(|sym| *sym),
57            zrotg_: get_symbol(&libs, b"zrotg_\0").map(|sym| *sym),
58            zdrot_: get_symbol(&libs, b"zdrot_\0").map(|sym| *sym),
59            zswap_: get_symbol(&libs, b"zswap_\0").map(|sym| *sym),
60            zcopy_: get_symbol(&libs, b"zcopy_\0").map(|sym| *sym),
61            zaxpy_: get_symbol(&libs, b"zaxpy_\0").map(|sym| *sym),
62            zdotcsub_: get_symbol(&libs, b"zdotcsub_\0").map(|sym| *sym),
63            zdotusub_: get_symbol(&libs, b"zdotusub_\0").map(|sym| *sym),
64            zdscal_: get_symbol(&libs, b"zdscal_\0").map(|sym| *sym),
65            zscal_: get_symbol(&libs, b"zscal_\0").map(|sym| *sym),
66            dznrm2sub_: get_symbol(&libs, b"dznrm2sub_\0").map(|sym| *sym),
67            dzasumsub_: get_symbol(&libs, b"dzasumsub_\0").map(|sym| *sym),
68            izamaxsub_: get_symbol(&libs, b"izamaxsub_\0").map(|sym| *sym),
69            dcabs1sub_: get_symbol(&libs, b"dcabs1sub_\0").map(|sym| *sym),
70            sgemv_: get_symbol(&libs, b"sgemv_\0").map(|sym| *sym),
71            sgbmv_: get_symbol(&libs, b"sgbmv_\0").map(|sym| *sym),
72            ssymv_: get_symbol(&libs, b"ssymv_\0").map(|sym| *sym),
73            ssbmv_: get_symbol(&libs, b"ssbmv_\0").map(|sym| *sym),
74            sspmv_: get_symbol(&libs, b"sspmv_\0").map(|sym| *sym),
75            strmv_: get_symbol(&libs, b"strmv_\0").map(|sym| *sym),
76            stbmv_: get_symbol(&libs, b"stbmv_\0").map(|sym| *sym),
77            strsv_: get_symbol(&libs, b"strsv_\0").map(|sym| *sym),
78            stbsv_: get_symbol(&libs, b"stbsv_\0").map(|sym| *sym),
79            stpmv_: get_symbol(&libs, b"stpmv_\0").map(|sym| *sym),
80            stpsv_: get_symbol(&libs, b"stpsv_\0").map(|sym| *sym),
81            sger_: get_symbol(&libs, b"sger_\0").map(|sym| *sym),
82            ssyr_: get_symbol(&libs, b"ssyr_\0").map(|sym| *sym),
83            sspr_: get_symbol(&libs, b"sspr_\0").map(|sym| *sym),
84            sspr2_: get_symbol(&libs, b"sspr2_\0").map(|sym| *sym),
85            ssyr2_: get_symbol(&libs, b"ssyr2_\0").map(|sym| *sym),
86            dgemv_: get_symbol(&libs, b"dgemv_\0").map(|sym| *sym),
87            dgbmv_: get_symbol(&libs, b"dgbmv_\0").map(|sym| *sym),
88            dsymv_: get_symbol(&libs, b"dsymv_\0").map(|sym| *sym),
89            dsbmv_: get_symbol(&libs, b"dsbmv_\0").map(|sym| *sym),
90            dspmv_: get_symbol(&libs, b"dspmv_\0").map(|sym| *sym),
91            dtrmv_: get_symbol(&libs, b"dtrmv_\0").map(|sym| *sym),
92            dtbmv_: get_symbol(&libs, b"dtbmv_\0").map(|sym| *sym),
93            dtrsv_: get_symbol(&libs, b"dtrsv_\0").map(|sym| *sym),
94            dtbsv_: get_symbol(&libs, b"dtbsv_\0").map(|sym| *sym),
95            dtpmv_: get_symbol(&libs, b"dtpmv_\0").map(|sym| *sym),
96            dtpsv_: get_symbol(&libs, b"dtpsv_\0").map(|sym| *sym),
97            dger_: get_symbol(&libs, b"dger_\0").map(|sym| *sym),
98            dsyr_: get_symbol(&libs, b"dsyr_\0").map(|sym| *sym),
99            dspr_: get_symbol(&libs, b"dspr_\0").map(|sym| *sym),
100            dspr2_: get_symbol(&libs, b"dspr2_\0").map(|sym| *sym),
101            dsyr2_: get_symbol(&libs, b"dsyr2_\0").map(|sym| *sym),
102            cgemv_: get_symbol(&libs, b"cgemv_\0").map(|sym| *sym),
103            cgbmv_: get_symbol(&libs, b"cgbmv_\0").map(|sym| *sym),
104            chemv_: get_symbol(&libs, b"chemv_\0").map(|sym| *sym),
105            chbmv_: get_symbol(&libs, b"chbmv_\0").map(|sym| *sym),
106            chpmv_: get_symbol(&libs, b"chpmv_\0").map(|sym| *sym),
107            ctrmv_: get_symbol(&libs, b"ctrmv_\0").map(|sym| *sym),
108            ctbmv_: get_symbol(&libs, b"ctbmv_\0").map(|sym| *sym),
109            ctpmv_: get_symbol(&libs, b"ctpmv_\0").map(|sym| *sym),
110            ctrsv_: get_symbol(&libs, b"ctrsv_\0").map(|sym| *sym),
111            ctbsv_: get_symbol(&libs, b"ctbsv_\0").map(|sym| *sym),
112            ctpsv_: get_symbol(&libs, b"ctpsv_\0").map(|sym| *sym),
113            cgerc_: get_symbol(&libs, b"cgerc_\0").map(|sym| *sym),
114            cgeru_: get_symbol(&libs, b"cgeru_\0").map(|sym| *sym),
115            cher_: get_symbol(&libs, b"cher_\0").map(|sym| *sym),
116            cher2_: get_symbol(&libs, b"cher2_\0").map(|sym| *sym),
117            chpr_: get_symbol(&libs, b"chpr_\0").map(|sym| *sym),
118            chpr2_: get_symbol(&libs, b"chpr2_\0").map(|sym| *sym),
119            zgemv_: get_symbol(&libs, b"zgemv_\0").map(|sym| *sym),
120            zgbmv_: get_symbol(&libs, b"zgbmv_\0").map(|sym| *sym),
121            zhemv_: get_symbol(&libs, b"zhemv_\0").map(|sym| *sym),
122            zhbmv_: get_symbol(&libs, b"zhbmv_\0").map(|sym| *sym),
123            zhpmv_: get_symbol(&libs, b"zhpmv_\0").map(|sym| *sym),
124            ztrmv_: get_symbol(&libs, b"ztrmv_\0").map(|sym| *sym),
125            ztbmv_: get_symbol(&libs, b"ztbmv_\0").map(|sym| *sym),
126            ztpmv_: get_symbol(&libs, b"ztpmv_\0").map(|sym| *sym),
127            ztrsv_: get_symbol(&libs, b"ztrsv_\0").map(|sym| *sym),
128            ztbsv_: get_symbol(&libs, b"ztbsv_\0").map(|sym| *sym),
129            ztpsv_: get_symbol(&libs, b"ztpsv_\0").map(|sym| *sym),
130            zgerc_: get_symbol(&libs, b"zgerc_\0").map(|sym| *sym),
131            zgeru_: get_symbol(&libs, b"zgeru_\0").map(|sym| *sym),
132            zher_: get_symbol(&libs, b"zher_\0").map(|sym| *sym),
133            zher2_: get_symbol(&libs, b"zher2_\0").map(|sym| *sym),
134            zhpr_: get_symbol(&libs, b"zhpr_\0").map(|sym| *sym),
135            zhpr2_: get_symbol(&libs, b"zhpr2_\0").map(|sym| *sym),
136            sgemm_: get_symbol(&libs, b"sgemm_\0").map(|sym| *sym),
137            sgemmtr_: get_symbol(&libs, b"sgemmtr_\0").map(|sym| *sym),
138            ssymm_: get_symbol(&libs, b"ssymm_\0").map(|sym| *sym),
139            ssyrk_: get_symbol(&libs, b"ssyrk_\0").map(|sym| *sym),
140            ssyr2k_: get_symbol(&libs, b"ssyr2k_\0").map(|sym| *sym),
141            strmm_: get_symbol(&libs, b"strmm_\0").map(|sym| *sym),
142            strsm_: get_symbol(&libs, b"strsm_\0").map(|sym| *sym),
143            dgemm_: get_symbol(&libs, b"dgemm_\0").map(|sym| *sym),
144            dgemmtr_: get_symbol(&libs, b"dgemmtr_\0").map(|sym| *sym),
145            dsymm_: get_symbol(&libs, b"dsymm_\0").map(|sym| *sym),
146            dsyrk_: get_symbol(&libs, b"dsyrk_\0").map(|sym| *sym),
147            dsyr2k_: get_symbol(&libs, b"dsyr2k_\0").map(|sym| *sym),
148            dtrmm_: get_symbol(&libs, b"dtrmm_\0").map(|sym| *sym),
149            dtrsm_: get_symbol(&libs, b"dtrsm_\0").map(|sym| *sym),
150            cgemm_: get_symbol(&libs, b"cgemm_\0").map(|sym| *sym),
151            cgemmtr_: get_symbol(&libs, b"cgemmtr_\0").map(|sym| *sym),
152            csymm_: get_symbol(&libs, b"csymm_\0").map(|sym| *sym),
153            chemm_: get_symbol(&libs, b"chemm_\0").map(|sym| *sym),
154            csyrk_: get_symbol(&libs, b"csyrk_\0").map(|sym| *sym),
155            cherk_: get_symbol(&libs, b"cherk_\0").map(|sym| *sym),
156            csyr2k_: get_symbol(&libs, b"csyr2k_\0").map(|sym| *sym),
157            cher2k_: get_symbol(&libs, b"cher2k_\0").map(|sym| *sym),
158            ctrmm_: get_symbol(&libs, b"ctrmm_\0").map(|sym| *sym),
159            ctrsm_: get_symbol(&libs, b"ctrsm_\0").map(|sym| *sym),
160            zgemm_: get_symbol(&libs, b"zgemm_\0").map(|sym| *sym),
161            zgemmtr_: get_symbol(&libs, b"zgemmtr_\0").map(|sym| *sym),
162            zsymm_: get_symbol(&libs, b"zsymm_\0").map(|sym| *sym),
163            zhemm_: get_symbol(&libs, b"zhemm_\0").map(|sym| *sym),
164            zsyrk_: get_symbol(&libs, b"zsyrk_\0").map(|sym| *sym),
165            zherk_: get_symbol(&libs, b"zherk_\0").map(|sym| *sym),
166            zsyr2k_: get_symbol(&libs, b"zsyr2k_\0").map(|sym| *sym),
167            zher2k_: get_symbol(&libs, b"zher2k_\0").map(|sym| *sym),
168            ztrmm_: get_symbol(&libs, b"ztrmm_\0").map(|sym| *sym),
169            ztrsm_: get_symbol(&libs, b"ztrsm_\0").map(|sym| *sym),
170        };
171        result.__libraries = libs;
172        result.__libraries_path = libs_path;
173        result
174    }
175}