tensorflow_sys/
c_api.rs

1/* automatically generated by rust-bindgen 0.59.1 */
2
3pub const TF_TSTRING_LITTLE_ENDIAN: u32 = 1;
4#[repr(i32)]
5#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
6pub enum TF_AttrType {
7    TF_ATTR_STRING = 0,
8    TF_ATTR_INT = 1,
9    TF_ATTR_FLOAT = 2,
10    TF_ATTR_BOOL = 3,
11    TF_ATTR_TYPE = 4,
12    TF_ATTR_SHAPE = 5,
13    TF_ATTR_TENSOR = 6,
14    TF_ATTR_PLACEHOLDER = 7,
15    TF_ATTR_FUNC = 8,
16}
17impl TF_DataType {
18    pub const TF_COMPLEX: TF_DataType = TF_DataType::TF_COMPLEX64;
19}
20#[repr(i32)]
21#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
22pub enum TF_DataType {
23    TF_FLOAT = 1,
24    TF_DOUBLE = 2,
25    TF_INT32 = 3,
26    TF_UINT8 = 4,
27    TF_INT16 = 5,
28    TF_INT8 = 6,
29    TF_STRING = 7,
30    TF_COMPLEX64 = 8,
31    TF_INT64 = 9,
32    TF_BOOL = 10,
33    TF_QINT8 = 11,
34    TF_QUINT8 = 12,
35    TF_QINT32 = 13,
36    TF_BFLOAT16 = 14,
37    TF_QINT16 = 15,
38    TF_QUINT16 = 16,
39    TF_UINT16 = 17,
40    TF_COMPLEX128 = 18,
41    TF_HALF = 19,
42    TF_RESOURCE = 20,
43    TF_VARIANT = 21,
44    TF_UINT32 = 22,
45    TF_UINT64 = 23,
46}
47extern "C" {
48    pub fn TF_DataTypeSize(dt: TF_DataType) -> usize;
49}
50#[repr(C)]
51#[derive(Debug, Copy, Clone)]
52pub struct TF_Status {
53    _unused: [u8; 0],
54}
55#[repr(i32)]
56#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
57pub enum TF_Code {
58    TF_OK = 0,
59    TF_CANCELLED = 1,
60    TF_UNKNOWN = 2,
61    TF_INVALID_ARGUMENT = 3,
62    TF_DEADLINE_EXCEEDED = 4,
63    TF_NOT_FOUND = 5,
64    TF_ALREADY_EXISTS = 6,
65    TF_PERMISSION_DENIED = 7,
66    TF_UNAUTHENTICATED = 16,
67    TF_RESOURCE_EXHAUSTED = 8,
68    TF_FAILED_PRECONDITION = 9,
69    TF_ABORTED = 10,
70    TF_OUT_OF_RANGE = 11,
71    TF_UNIMPLEMENTED = 12,
72    TF_INTERNAL = 13,
73    TF_UNAVAILABLE = 14,
74    TF_DATA_LOSS = 15,
75}
76extern "C" {
77    pub fn TF_NewStatus() -> *mut TF_Status;
78}
79extern "C" {
80    pub fn TF_DeleteStatus(arg1: *mut TF_Status);
81}
82extern "C" {
83    pub fn TF_SetStatus(s: *mut TF_Status, code: TF_Code, msg: *const ::std::os::raw::c_char);
84}
85extern "C" {
86    pub fn TF_SetStatusFromIOError(
87        s: *mut TF_Status,
88        error_code: ::std::os::raw::c_int,
89        context: *const ::std::os::raw::c_char,
90    );
91}
92extern "C" {
93    pub fn TF_GetCode(s: *const TF_Status) -> TF_Code;
94}
95extern "C" {
96    pub fn TF_Message(s: *const TF_Status) -> *const ::std::os::raw::c_char;
97}
98#[repr(C)]
99#[derive(Debug, Copy, Clone)]
100pub struct TF_AllocatorAttributes {
101    pub struct_size: usize,
102    pub on_host: ::std::os::raw::c_uchar,
103}
104#[test]
105fn bindgen_test_layout_TF_AllocatorAttributes() {
106    assert_eq!(
107        ::std::mem::size_of::<TF_AllocatorAttributes>(),
108        16usize,
109        concat!("Size of: ", stringify!(TF_AllocatorAttributes))
110    );
111    assert_eq!(
112        ::std::mem::align_of::<TF_AllocatorAttributes>(),
113        8usize,
114        concat!("Alignment of ", stringify!(TF_AllocatorAttributes))
115    );
116    assert_eq!(
117        unsafe {
118            &(*(::std::ptr::null::<TF_AllocatorAttributes>())).struct_size as *const _ as usize
119        },
120        0usize,
121        concat!(
122            "Offset of field: ",
123            stringify!(TF_AllocatorAttributes),
124            "::",
125            stringify!(struct_size)
126        )
127    );
128    assert_eq!(
129        unsafe { &(*(::std::ptr::null::<TF_AllocatorAttributes>())).on_host as *const _ as usize },
130        8usize,
131        concat!(
132            "Offset of field: ",
133            stringify!(TF_AllocatorAttributes),
134            "::",
135            stringify!(on_host)
136        )
137    );
138}
139#[repr(C)]
140#[derive(Debug, Copy, Clone)]
141pub struct TF_Tensor {
142    _unused: [u8; 0],
143}
144extern "C" {
145    pub fn TF_NewTensor(
146        arg1: TF_DataType,
147        dims: *const i64,
148        num_dims: ::std::os::raw::c_int,
149        data: *mut ::std::os::raw::c_void,
150        len: usize,
151        deallocator: ::std::option::Option<
152            unsafe extern "C" fn(
153                data: *mut ::std::os::raw::c_void,
154                len: usize,
155                arg: *mut ::std::os::raw::c_void,
156            ),
157        >,
158        deallocator_arg: *mut ::std::os::raw::c_void,
159    ) -> *mut TF_Tensor;
160}
161extern "C" {
162    pub fn TF_AllocateTensor(
163        arg1: TF_DataType,
164        dims: *const i64,
165        num_dims: ::std::os::raw::c_int,
166        len: usize,
167    ) -> *mut TF_Tensor;
168}
169extern "C" {
170    pub fn TF_TensorMaybeMove(tensor: *mut TF_Tensor) -> *mut TF_Tensor;
171}
172extern "C" {
173    pub fn TF_DeleteTensor(arg1: *mut TF_Tensor);
174}
175extern "C" {
176    pub fn TF_TensorType(arg1: *const TF_Tensor) -> TF_DataType;
177}
178extern "C" {
179    pub fn TF_NumDims(arg1: *const TF_Tensor) -> ::std::os::raw::c_int;
180}
181extern "C" {
182    pub fn TF_Dim(tensor: *const TF_Tensor, dim_index: ::std::os::raw::c_int) -> i64;
183}
184extern "C" {
185    pub fn TF_TensorByteSize(arg1: *const TF_Tensor) -> usize;
186}
187extern "C" {
188    pub fn TF_TensorData(arg1: *const TF_Tensor) -> *mut ::std::os::raw::c_void;
189}
190extern "C" {
191    pub fn TF_TensorElementCount(tensor: *const TF_Tensor) -> i64;
192}
193extern "C" {
194    pub fn TF_TensorBitcastFrom(
195        from: *const TF_Tensor,
196        type_: TF_DataType,
197        to: *mut TF_Tensor,
198        new_dims: *const i64,
199        num_new_dims: ::std::os::raw::c_int,
200        status: *mut TF_Status,
201    );
202}
203extern "C" {
204    pub fn TF_TensorIsAligned(arg1: *const TF_Tensor) -> bool;
205}
206impl TF_TString_Type {
207    pub const TF_TSTR_TYPE_MASK: TF_TString_Type = TF_TString_Type::TF_TSTR_VIEW;
208}
209#[repr(i32)]
210#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
211pub enum TF_TString_Type {
212    TF_TSTR_SMALL = 0,
213    TF_TSTR_LARGE = 1,
214    TF_TSTR_OFFSET = 2,
215    TF_TSTR_VIEW = 3,
216}
217#[repr(C)]
218#[derive(Debug, Copy, Clone)]
219pub struct TF_TString_Large {
220    pub size: usize,
221    pub cap: usize,
222    pub ptr: *mut ::std::os::raw::c_char,
223}
224#[test]
225fn bindgen_test_layout_TF_TString_Large() {
226    assert_eq!(
227        ::std::mem::size_of::<TF_TString_Large>(),
228        24usize,
229        concat!("Size of: ", stringify!(TF_TString_Large))
230    );
231    assert_eq!(
232        ::std::mem::align_of::<TF_TString_Large>(),
233        8usize,
234        concat!("Alignment of ", stringify!(TF_TString_Large))
235    );
236    assert_eq!(
237        unsafe { &(*(::std::ptr::null::<TF_TString_Large>())).size as *const _ as usize },
238        0usize,
239        concat!(
240            "Offset of field: ",
241            stringify!(TF_TString_Large),
242            "::",
243            stringify!(size)
244        )
245    );
246    assert_eq!(
247        unsafe { &(*(::std::ptr::null::<TF_TString_Large>())).cap as *const _ as usize },
248        8usize,
249        concat!(
250            "Offset of field: ",
251            stringify!(TF_TString_Large),
252            "::",
253            stringify!(cap)
254        )
255    );
256    assert_eq!(
257        unsafe { &(*(::std::ptr::null::<TF_TString_Large>())).ptr as *const _ as usize },
258        16usize,
259        concat!(
260            "Offset of field: ",
261            stringify!(TF_TString_Large),
262            "::",
263            stringify!(ptr)
264        )
265    );
266}
267#[repr(C)]
268#[derive(Debug, Copy, Clone)]
269pub struct TF_TString_Offset {
270    pub size: u32,
271    pub offset: u32,
272    pub count: u32,
273}
274#[test]
275fn bindgen_test_layout_TF_TString_Offset() {
276    assert_eq!(
277        ::std::mem::size_of::<TF_TString_Offset>(),
278        12usize,
279        concat!("Size of: ", stringify!(TF_TString_Offset))
280    );
281    assert_eq!(
282        ::std::mem::align_of::<TF_TString_Offset>(),
283        4usize,
284        concat!("Alignment of ", stringify!(TF_TString_Offset))
285    );
286    assert_eq!(
287        unsafe { &(*(::std::ptr::null::<TF_TString_Offset>())).size as *const _ as usize },
288        0usize,
289        concat!(
290            "Offset of field: ",
291            stringify!(TF_TString_Offset),
292            "::",
293            stringify!(size)
294        )
295    );
296    assert_eq!(
297        unsafe { &(*(::std::ptr::null::<TF_TString_Offset>())).offset as *const _ as usize },
298        4usize,
299        concat!(
300            "Offset of field: ",
301            stringify!(TF_TString_Offset),
302            "::",
303            stringify!(offset)
304        )
305    );
306    assert_eq!(
307        unsafe { &(*(::std::ptr::null::<TF_TString_Offset>())).count as *const _ as usize },
308        8usize,
309        concat!(
310            "Offset of field: ",
311            stringify!(TF_TString_Offset),
312            "::",
313            stringify!(count)
314        )
315    );
316}
317#[repr(C)]
318#[derive(Debug, Copy, Clone)]
319pub struct TF_TString_View {
320    pub size: usize,
321    pub ptr: *const ::std::os::raw::c_char,
322}
323#[test]
324fn bindgen_test_layout_TF_TString_View() {
325    assert_eq!(
326        ::std::mem::size_of::<TF_TString_View>(),
327        16usize,
328        concat!("Size of: ", stringify!(TF_TString_View))
329    );
330    assert_eq!(
331        ::std::mem::align_of::<TF_TString_View>(),
332        8usize,
333        concat!("Alignment of ", stringify!(TF_TString_View))
334    );
335    assert_eq!(
336        unsafe { &(*(::std::ptr::null::<TF_TString_View>())).size as *const _ as usize },
337        0usize,
338        concat!(
339            "Offset of field: ",
340            stringify!(TF_TString_View),
341            "::",
342            stringify!(size)
343        )
344    );
345    assert_eq!(
346        unsafe { &(*(::std::ptr::null::<TF_TString_View>())).ptr as *const _ as usize },
347        8usize,
348        concat!(
349            "Offset of field: ",
350            stringify!(TF_TString_View),
351            "::",
352            stringify!(ptr)
353        )
354    );
355}
356#[repr(C)]
357#[derive(Debug, Copy, Clone)]
358pub struct TF_TString_Raw {
359    pub raw: [u8; 24usize],
360}
361#[test]
362fn bindgen_test_layout_TF_TString_Raw() {
363    assert_eq!(
364        ::std::mem::size_of::<TF_TString_Raw>(),
365        24usize,
366        concat!("Size of: ", stringify!(TF_TString_Raw))
367    );
368    assert_eq!(
369        ::std::mem::align_of::<TF_TString_Raw>(),
370        1usize,
371        concat!("Alignment of ", stringify!(TF_TString_Raw))
372    );
373    assert_eq!(
374        unsafe { &(*(::std::ptr::null::<TF_TString_Raw>())).raw as *const _ as usize },
375        0usize,
376        concat!(
377            "Offset of field: ",
378            stringify!(TF_TString_Raw),
379            "::",
380            stringify!(raw)
381        )
382    );
383}
384#[repr(C)]
385#[derive(Copy, Clone)]
386pub union TF_TString_Union {
387    pub large: TF_TString_Large,
388    pub offset: TF_TString_Offset,
389    pub view: TF_TString_View,
390    pub raw: TF_TString_Raw,
391}
392#[test]
393fn bindgen_test_layout_TF_TString_Union() {
394    assert_eq!(
395        ::std::mem::size_of::<TF_TString_Union>(),
396        24usize,
397        concat!("Size of: ", stringify!(TF_TString_Union))
398    );
399    assert_eq!(
400        ::std::mem::align_of::<TF_TString_Union>(),
401        8usize,
402        concat!("Alignment of ", stringify!(TF_TString_Union))
403    );
404    assert_eq!(
405        unsafe { &(*(::std::ptr::null::<TF_TString_Union>())).large as *const _ as usize },
406        0usize,
407        concat!(
408            "Offset of field: ",
409            stringify!(TF_TString_Union),
410            "::",
411            stringify!(large)
412        )
413    );
414    assert_eq!(
415        unsafe { &(*(::std::ptr::null::<TF_TString_Union>())).offset as *const _ as usize },
416        0usize,
417        concat!(
418            "Offset of field: ",
419            stringify!(TF_TString_Union),
420            "::",
421            stringify!(offset)
422        )
423    );
424    assert_eq!(
425        unsafe { &(*(::std::ptr::null::<TF_TString_Union>())).view as *const _ as usize },
426        0usize,
427        concat!(
428            "Offset of field: ",
429            stringify!(TF_TString_Union),
430            "::",
431            stringify!(view)
432        )
433    );
434    assert_eq!(
435        unsafe { &(*(::std::ptr::null::<TF_TString_Union>())).raw as *const _ as usize },
436        0usize,
437        concat!(
438            "Offset of field: ",
439            stringify!(TF_TString_Union),
440            "::",
441            stringify!(raw)
442        )
443    );
444}
445pub const TF_TString_SmallCapacity: _bindgen_ty_1 = _bindgen_ty_1::TF_TString_SmallCapacity;
446#[repr(i32)]
447#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
448pub enum _bindgen_ty_1 {
449    TF_TString_SmallCapacity = 22,
450}
451#[repr(C)]
452#[derive(Debug, Copy, Clone)]
453pub struct TF_TString_Small {
454    pub size: u8,
455    pub str_: [::std::os::raw::c_char; 23usize],
456}
457#[test]
458fn bindgen_test_layout_TF_TString_Small() {
459    assert_eq!(
460        ::std::mem::size_of::<TF_TString_Small>(),
461        24usize,
462        concat!("Size of: ", stringify!(TF_TString_Small))
463    );
464    assert_eq!(
465        ::std::mem::align_of::<TF_TString_Small>(),
466        1usize,
467        concat!("Alignment of ", stringify!(TF_TString_Small))
468    );
469    assert_eq!(
470        unsafe { &(*(::std::ptr::null::<TF_TString_Small>())).size as *const _ as usize },
471        0usize,
472        concat!(
473            "Offset of field: ",
474            stringify!(TF_TString_Small),
475            "::",
476            stringify!(size)
477        )
478    );
479    assert_eq!(
480        unsafe { &(*(::std::ptr::null::<TF_TString_Small>())).str_ as *const _ as usize },
481        1usize,
482        concat!(
483            "Offset of field: ",
484            stringify!(TF_TString_Small),
485            "::",
486            stringify!(str_)
487        )
488    );
489}
490#[repr(C)]
491#[derive(Copy, Clone)]
492pub struct TF_TString {
493    pub u: TF_TString__bindgen_ty_1,
494}
495#[repr(C)]
496#[derive(Copy, Clone)]
497pub union TF_TString__bindgen_ty_1 {
498    pub smll: TF_TString_Small,
499    pub large: TF_TString_Large,
500    pub offset: TF_TString_Offset,
501    pub view: TF_TString_View,
502    pub raw: TF_TString_Raw,
503}
504#[test]
505fn bindgen_test_layout_TF_TString__bindgen_ty_1() {
506    assert_eq!(
507        ::std::mem::size_of::<TF_TString__bindgen_ty_1>(),
508        24usize,
509        concat!("Size of: ", stringify!(TF_TString__bindgen_ty_1))
510    );
511    assert_eq!(
512        ::std::mem::align_of::<TF_TString__bindgen_ty_1>(),
513        8usize,
514        concat!("Alignment of ", stringify!(TF_TString__bindgen_ty_1))
515    );
516    assert_eq!(
517        unsafe { &(*(::std::ptr::null::<TF_TString__bindgen_ty_1>())).smll as *const _ as usize },
518        0usize,
519        concat!(
520            "Offset of field: ",
521            stringify!(TF_TString__bindgen_ty_1),
522            "::",
523            stringify!(smll)
524        )
525    );
526    assert_eq!(
527        unsafe { &(*(::std::ptr::null::<TF_TString__bindgen_ty_1>())).large as *const _ as usize },
528        0usize,
529        concat!(
530            "Offset of field: ",
531            stringify!(TF_TString__bindgen_ty_1),
532            "::",
533            stringify!(large)
534        )
535    );
536    assert_eq!(
537        unsafe { &(*(::std::ptr::null::<TF_TString__bindgen_ty_1>())).offset as *const _ as usize },
538        0usize,
539        concat!(
540            "Offset of field: ",
541            stringify!(TF_TString__bindgen_ty_1),
542            "::",
543            stringify!(offset)
544        )
545    );
546    assert_eq!(
547        unsafe { &(*(::std::ptr::null::<TF_TString__bindgen_ty_1>())).view as *const _ as usize },
548        0usize,
549        concat!(
550            "Offset of field: ",
551            stringify!(TF_TString__bindgen_ty_1),
552            "::",
553            stringify!(view)
554        )
555    );
556    assert_eq!(
557        unsafe { &(*(::std::ptr::null::<TF_TString__bindgen_ty_1>())).raw as *const _ as usize },
558        0usize,
559        concat!(
560            "Offset of field: ",
561            stringify!(TF_TString__bindgen_ty_1),
562            "::",
563            stringify!(raw)
564        )
565    );
566}
567#[test]
568fn bindgen_test_layout_TF_TString() {
569    assert_eq!(
570        ::std::mem::size_of::<TF_TString>(),
571        24usize,
572        concat!("Size of: ", stringify!(TF_TString))
573    );
574    assert_eq!(
575        ::std::mem::align_of::<TF_TString>(),
576        8usize,
577        concat!("Alignment of ", stringify!(TF_TString))
578    );
579    assert_eq!(
580        unsafe { &(*(::std::ptr::null::<TF_TString>())).u as *const _ as usize },
581        0usize,
582        concat!(
583            "Offset of field: ",
584            stringify!(TF_TString),
585            "::",
586            stringify!(u)
587        )
588    );
589}
590extern "C" {
591    pub fn TF_StringInit(t: *mut TF_TString);
592}
593extern "C" {
594    pub fn TF_StringCopy(dst: *mut TF_TString, src: *const ::std::os::raw::c_char, size: usize);
595}
596extern "C" {
597    pub fn TF_StringAssignView(
598        dst: *mut TF_TString,
599        src: *const ::std::os::raw::c_char,
600        size: usize,
601    );
602}
603extern "C" {
604    pub fn TF_StringGetDataPointer(tstr: *const TF_TString) -> *const ::std::os::raw::c_char;
605}
606extern "C" {
607    pub fn TF_StringGetType(str_: *const TF_TString) -> TF_TString_Type;
608}
609extern "C" {
610    pub fn TF_StringGetSize(tstr: *const TF_TString) -> usize;
611}
612extern "C" {
613    pub fn TF_StringGetCapacity(str_: *const TF_TString) -> usize;
614}
615extern "C" {
616    pub fn TF_StringDealloc(tstr: *mut TF_TString);
617}
618extern "C" {
619    pub fn TF_Version() -> *const ::std::os::raw::c_char;
620}
621#[repr(C)]
622#[derive(Debug, Copy, Clone)]
623pub struct TF_Buffer {
624    pub data: *const ::std::os::raw::c_void,
625    pub length: usize,
626    pub data_deallocator: ::std::option::Option<
627        unsafe extern "C" fn(data: *mut ::std::os::raw::c_void, length: usize),
628    >,
629}
630#[test]
631fn bindgen_test_layout_TF_Buffer() {
632    assert_eq!(
633        ::std::mem::size_of::<TF_Buffer>(),
634        24usize,
635        concat!("Size of: ", stringify!(TF_Buffer))
636    );
637    assert_eq!(
638        ::std::mem::align_of::<TF_Buffer>(),
639        8usize,
640        concat!("Alignment of ", stringify!(TF_Buffer))
641    );
642    assert_eq!(
643        unsafe { &(*(::std::ptr::null::<TF_Buffer>())).data as *const _ as usize },
644        0usize,
645        concat!(
646            "Offset of field: ",
647            stringify!(TF_Buffer),
648            "::",
649            stringify!(data)
650        )
651    );
652    assert_eq!(
653        unsafe { &(*(::std::ptr::null::<TF_Buffer>())).length as *const _ as usize },
654        8usize,
655        concat!(
656            "Offset of field: ",
657            stringify!(TF_Buffer),
658            "::",
659            stringify!(length)
660        )
661    );
662    assert_eq!(
663        unsafe { &(*(::std::ptr::null::<TF_Buffer>())).data_deallocator as *const _ as usize },
664        16usize,
665        concat!(
666            "Offset of field: ",
667            stringify!(TF_Buffer),
668            "::",
669            stringify!(data_deallocator)
670        )
671    );
672}
673extern "C" {
674    pub fn TF_NewBufferFromString(
675        proto: *const ::std::os::raw::c_void,
676        proto_len: usize,
677    ) -> *mut TF_Buffer;
678}
679extern "C" {
680    pub fn TF_NewBuffer() -> *mut TF_Buffer;
681}
682extern "C" {
683    pub fn TF_DeleteBuffer(arg1: *mut TF_Buffer);
684}
685extern "C" {
686    pub fn TF_GetBuffer(buffer: *mut TF_Buffer) -> TF_Buffer;
687}
688#[repr(C)]
689#[derive(Debug, Copy, Clone)]
690pub struct TF_StringView {
691    pub data: *const ::std::os::raw::c_char,
692    pub len: usize,
693}
694#[test]
695fn bindgen_test_layout_TF_StringView() {
696    assert_eq!(
697        ::std::mem::size_of::<TF_StringView>(),
698        16usize,
699        concat!("Size of: ", stringify!(TF_StringView))
700    );
701    assert_eq!(
702        ::std::mem::align_of::<TF_StringView>(),
703        8usize,
704        concat!("Alignment of ", stringify!(TF_StringView))
705    );
706    assert_eq!(
707        unsafe { &(*(::std::ptr::null::<TF_StringView>())).data as *const _ as usize },
708        0usize,
709        concat!(
710            "Offset of field: ",
711            stringify!(TF_StringView),
712            "::",
713            stringify!(data)
714        )
715    );
716    assert_eq!(
717        unsafe { &(*(::std::ptr::null::<TF_StringView>())).len as *const _ as usize },
718        8usize,
719        concat!(
720            "Offset of field: ",
721            stringify!(TF_StringView),
722            "::",
723            stringify!(len)
724        )
725    );
726}
727#[repr(C)]
728#[derive(Debug, Copy, Clone)]
729pub struct TF_SessionOptions {
730    _unused: [u8; 0],
731}
732extern "C" {
733    pub fn TF_NewSessionOptions() -> *mut TF_SessionOptions;
734}
735extern "C" {
736    pub fn TF_SetTarget(options: *mut TF_SessionOptions, target: *const ::std::os::raw::c_char);
737}
738extern "C" {
739    pub fn TF_SetConfig(
740        options: *mut TF_SessionOptions,
741        proto: *const ::std::os::raw::c_void,
742        proto_len: usize,
743        status: *mut TF_Status,
744    );
745}
746extern "C" {
747    pub fn TF_DeleteSessionOptions(arg1: *mut TF_SessionOptions);
748}
749#[repr(C)]
750#[derive(Debug, Copy, Clone)]
751pub struct TF_Graph {
752    _unused: [u8; 0],
753}
754extern "C" {
755    pub fn TF_NewGraph() -> *mut TF_Graph;
756}
757extern "C" {
758    pub fn TF_DeleteGraph(arg1: *mut TF_Graph);
759}
760#[repr(C)]
761#[derive(Debug, Copy, Clone)]
762pub struct TF_OperationDescription {
763    _unused: [u8; 0],
764}
765#[repr(C)]
766#[derive(Debug, Copy, Clone)]
767pub struct TF_Operation {
768    _unused: [u8; 0],
769}
770#[repr(C)]
771#[derive(Debug, Copy, Clone)]
772pub struct TF_Input {
773    pub oper: *mut TF_Operation,
774    pub index: ::std::os::raw::c_int,
775}
776#[test]
777fn bindgen_test_layout_TF_Input() {
778    assert_eq!(
779        ::std::mem::size_of::<TF_Input>(),
780        16usize,
781        concat!("Size of: ", stringify!(TF_Input))
782    );
783    assert_eq!(
784        ::std::mem::align_of::<TF_Input>(),
785        8usize,
786        concat!("Alignment of ", stringify!(TF_Input))
787    );
788    assert_eq!(
789        unsafe { &(*(::std::ptr::null::<TF_Input>())).oper as *const _ as usize },
790        0usize,
791        concat!(
792            "Offset of field: ",
793            stringify!(TF_Input),
794            "::",
795            stringify!(oper)
796        )
797    );
798    assert_eq!(
799        unsafe { &(*(::std::ptr::null::<TF_Input>())).index as *const _ as usize },
800        8usize,
801        concat!(
802            "Offset of field: ",
803            stringify!(TF_Input),
804            "::",
805            stringify!(index)
806        )
807    );
808}
809#[repr(C)]
810#[derive(Debug, Copy, Clone)]
811pub struct TF_Output {
812    pub oper: *mut TF_Operation,
813    pub index: ::std::os::raw::c_int,
814}
815#[test]
816fn bindgen_test_layout_TF_Output() {
817    assert_eq!(
818        ::std::mem::size_of::<TF_Output>(),
819        16usize,
820        concat!("Size of: ", stringify!(TF_Output))
821    );
822    assert_eq!(
823        ::std::mem::align_of::<TF_Output>(),
824        8usize,
825        concat!("Alignment of ", stringify!(TF_Output))
826    );
827    assert_eq!(
828        unsafe { &(*(::std::ptr::null::<TF_Output>())).oper as *const _ as usize },
829        0usize,
830        concat!(
831            "Offset of field: ",
832            stringify!(TF_Output),
833            "::",
834            stringify!(oper)
835        )
836    );
837    assert_eq!(
838        unsafe { &(*(::std::ptr::null::<TF_Output>())).index as *const _ as usize },
839        8usize,
840        concat!(
841            "Offset of field: ",
842            stringify!(TF_Output),
843            "::",
844            stringify!(index)
845        )
846    );
847}
848#[repr(C)]
849#[derive(Debug, Copy, Clone)]
850pub struct TF_Function {
851    _unused: [u8; 0],
852}
853#[repr(C)]
854#[derive(Debug, Copy, Clone)]
855pub struct TF_FunctionOptions {
856    _unused: [u8; 0],
857}
858extern "C" {
859    pub fn TF_GraphSetTensorShape(
860        graph: *mut TF_Graph,
861        output: TF_Output,
862        dims: *const i64,
863        num_dims: ::std::os::raw::c_int,
864        status: *mut TF_Status,
865    );
866}
867extern "C" {
868    pub fn TF_GraphGetTensorNumDims(
869        graph: *mut TF_Graph,
870        output: TF_Output,
871        status: *mut TF_Status,
872    ) -> ::std::os::raw::c_int;
873}
874extern "C" {
875    pub fn TF_GraphGetTensorShape(
876        graph: *mut TF_Graph,
877        output: TF_Output,
878        dims: *mut i64,
879        num_dims: ::std::os::raw::c_int,
880        status: *mut TF_Status,
881    );
882}
883extern "C" {
884    pub fn TF_NewOperation(
885        graph: *mut TF_Graph,
886        op_type: *const ::std::os::raw::c_char,
887        oper_name: *const ::std::os::raw::c_char,
888    ) -> *mut TF_OperationDescription;
889}
890extern "C" {
891    pub fn TF_SetDevice(desc: *mut TF_OperationDescription, device: *const ::std::os::raw::c_char);
892}
893extern "C" {
894    pub fn TF_AddInput(desc: *mut TF_OperationDescription, input: TF_Output);
895}
896extern "C" {
897    pub fn TF_AddInputList(
898        desc: *mut TF_OperationDescription,
899        inputs: *const TF_Output,
900        num_inputs: ::std::os::raw::c_int,
901    );
902}
903extern "C" {
904    pub fn TF_AddControlInput(desc: *mut TF_OperationDescription, input: *mut TF_Operation);
905}
906extern "C" {
907    pub fn TF_ColocateWith(desc: *mut TF_OperationDescription, op: *mut TF_Operation);
908}
909extern "C" {
910    pub fn TF_SetAttrString(
911        desc: *mut TF_OperationDescription,
912        attr_name: *const ::std::os::raw::c_char,
913        value: *const ::std::os::raw::c_void,
914        length: usize,
915    );
916}
917extern "C" {
918    pub fn TF_SetAttrStringList(
919        desc: *mut TF_OperationDescription,
920        attr_name: *const ::std::os::raw::c_char,
921        values: *const *const ::std::os::raw::c_void,
922        lengths: *const usize,
923        num_values: ::std::os::raw::c_int,
924    );
925}
926extern "C" {
927    pub fn TF_SetAttrInt(
928        desc: *mut TF_OperationDescription,
929        attr_name: *const ::std::os::raw::c_char,
930        value: i64,
931    );
932}
933extern "C" {
934    pub fn TF_SetAttrIntList(
935        desc: *mut TF_OperationDescription,
936        attr_name: *const ::std::os::raw::c_char,
937        values: *const i64,
938        num_values: ::std::os::raw::c_int,
939    );
940}
941extern "C" {
942    pub fn TF_SetAttrFloat(
943        desc: *mut TF_OperationDescription,
944        attr_name: *const ::std::os::raw::c_char,
945        value: f32,
946    );
947}
948extern "C" {
949    pub fn TF_SetAttrFloatList(
950        desc: *mut TF_OperationDescription,
951        attr_name: *const ::std::os::raw::c_char,
952        values: *const f32,
953        num_values: ::std::os::raw::c_int,
954    );
955}
956extern "C" {
957    pub fn TF_SetAttrBool(
958        desc: *mut TF_OperationDescription,
959        attr_name: *const ::std::os::raw::c_char,
960        value: ::std::os::raw::c_uchar,
961    );
962}
963extern "C" {
964    pub fn TF_SetAttrBoolList(
965        desc: *mut TF_OperationDescription,
966        attr_name: *const ::std::os::raw::c_char,
967        values: *const ::std::os::raw::c_uchar,
968        num_values: ::std::os::raw::c_int,
969    );
970}
971extern "C" {
972    pub fn TF_SetAttrType(
973        desc: *mut TF_OperationDescription,
974        attr_name: *const ::std::os::raw::c_char,
975        value: TF_DataType,
976    );
977}
978extern "C" {
979    pub fn TF_SetAttrTypeList(
980        desc: *mut TF_OperationDescription,
981        attr_name: *const ::std::os::raw::c_char,
982        values: *const TF_DataType,
983        num_values: ::std::os::raw::c_int,
984    );
985}
986extern "C" {
987    pub fn TF_SetAttrPlaceholder(
988        desc: *mut TF_OperationDescription,
989        attr_name: *const ::std::os::raw::c_char,
990        placeholder: *const ::std::os::raw::c_char,
991    );
992}
993extern "C" {
994    pub fn TF_SetAttrFuncName(
995        desc: *mut TF_OperationDescription,
996        attr_name: *const ::std::os::raw::c_char,
997        value: *const ::std::os::raw::c_char,
998        length: usize,
999    );
1000}
1001extern "C" {
1002    pub fn TF_SetAttrShape(
1003        desc: *mut TF_OperationDescription,
1004        attr_name: *const ::std::os::raw::c_char,
1005        dims: *const i64,
1006        num_dims: ::std::os::raw::c_int,
1007    );
1008}
1009extern "C" {
1010    pub fn TF_SetAttrShapeList(
1011        desc: *mut TF_OperationDescription,
1012        attr_name: *const ::std::os::raw::c_char,
1013        dims: *const *const i64,
1014        num_dims: *const ::std::os::raw::c_int,
1015        num_shapes: ::std::os::raw::c_int,
1016    );
1017}
1018extern "C" {
1019    pub fn TF_SetAttrTensorShapeProto(
1020        desc: *mut TF_OperationDescription,
1021        attr_name: *const ::std::os::raw::c_char,
1022        proto: *const ::std::os::raw::c_void,
1023        proto_len: usize,
1024        status: *mut TF_Status,
1025    );
1026}
1027extern "C" {
1028    pub fn TF_SetAttrTensorShapeProtoList(
1029        desc: *mut TF_OperationDescription,
1030        attr_name: *const ::std::os::raw::c_char,
1031        protos: *const *const ::std::os::raw::c_void,
1032        proto_lens: *const usize,
1033        num_shapes: ::std::os::raw::c_int,
1034        status: *mut TF_Status,
1035    );
1036}
1037extern "C" {
1038    pub fn TF_SetAttrTensor(
1039        desc: *mut TF_OperationDescription,
1040        attr_name: *const ::std::os::raw::c_char,
1041        value: *mut TF_Tensor,
1042        status: *mut TF_Status,
1043    );
1044}
1045extern "C" {
1046    pub fn TF_SetAttrTensorList(
1047        desc: *mut TF_OperationDescription,
1048        attr_name: *const ::std::os::raw::c_char,
1049        values: *const *mut TF_Tensor,
1050        num_values: ::std::os::raw::c_int,
1051        status: *mut TF_Status,
1052    );
1053}
1054extern "C" {
1055    pub fn TF_SetAttrValueProto(
1056        desc: *mut TF_OperationDescription,
1057        attr_name: *const ::std::os::raw::c_char,
1058        proto: *const ::std::os::raw::c_void,
1059        proto_len: usize,
1060        status: *mut TF_Status,
1061    );
1062}
1063extern "C" {
1064    pub fn TF_FinishOperation(
1065        desc: *mut TF_OperationDescription,
1066        status: *mut TF_Status,
1067    ) -> *mut TF_Operation;
1068}
1069extern "C" {
1070    pub fn TF_OperationName(oper: *mut TF_Operation) -> *const ::std::os::raw::c_char;
1071}
1072extern "C" {
1073    pub fn TF_OperationOpType(oper: *mut TF_Operation) -> *const ::std::os::raw::c_char;
1074}
1075extern "C" {
1076    pub fn TF_OperationDevice(oper: *mut TF_Operation) -> *const ::std::os::raw::c_char;
1077}
1078extern "C" {
1079    pub fn TF_OperationNumOutputs(oper: *mut TF_Operation) -> ::std::os::raw::c_int;
1080}
1081extern "C" {
1082    pub fn TF_OperationOutputType(oper_out: TF_Output) -> TF_DataType;
1083}
1084extern "C" {
1085    pub fn TF_OperationOutputListLength(
1086        oper: *mut TF_Operation,
1087        arg_name: *const ::std::os::raw::c_char,
1088        status: *mut TF_Status,
1089    ) -> ::std::os::raw::c_int;
1090}
1091extern "C" {
1092    pub fn TF_OperationNumInputs(oper: *mut TF_Operation) -> ::std::os::raw::c_int;
1093}
1094extern "C" {
1095    pub fn TF_OperationInputType(oper_in: TF_Input) -> TF_DataType;
1096}
1097extern "C" {
1098    pub fn TF_OperationInputListLength(
1099        oper: *mut TF_Operation,
1100        arg_name: *const ::std::os::raw::c_char,
1101        status: *mut TF_Status,
1102    ) -> ::std::os::raw::c_int;
1103}
1104extern "C" {
1105    pub fn TF_OperationInput(oper_in: TF_Input) -> TF_Output;
1106}
1107extern "C" {
1108    pub fn TF_OperationAllInputs(
1109        oper: *mut TF_Operation,
1110        inputs: *mut TF_Output,
1111        max_inputs: ::std::os::raw::c_int,
1112    );
1113}
1114extern "C" {
1115    pub fn TF_OperationOutputNumConsumers(oper_out: TF_Output) -> ::std::os::raw::c_int;
1116}
1117extern "C" {
1118    pub fn TF_OperationOutputConsumers(
1119        oper_out: TF_Output,
1120        consumers: *mut TF_Input,
1121        max_consumers: ::std::os::raw::c_int,
1122    ) -> ::std::os::raw::c_int;
1123}
1124extern "C" {
1125    pub fn TF_OperationNumControlInputs(oper: *mut TF_Operation) -> ::std::os::raw::c_int;
1126}
1127extern "C" {
1128    pub fn TF_OperationGetControlInputs(
1129        oper: *mut TF_Operation,
1130        control_inputs: *mut *mut TF_Operation,
1131        max_control_inputs: ::std::os::raw::c_int,
1132    ) -> ::std::os::raw::c_int;
1133}
1134extern "C" {
1135    pub fn TF_OperationNumControlOutputs(oper: *mut TF_Operation) -> ::std::os::raw::c_int;
1136}
1137extern "C" {
1138    pub fn TF_OperationGetControlOutputs(
1139        oper: *mut TF_Operation,
1140        control_outputs: *mut *mut TF_Operation,
1141        max_control_outputs: ::std::os::raw::c_int,
1142    ) -> ::std::os::raw::c_int;
1143}
1144#[repr(C)]
1145#[derive(Debug, Copy, Clone)]
1146pub struct TF_AttrMetadata {
1147    pub is_list: ::std::os::raw::c_uchar,
1148    pub list_size: i64,
1149    pub type_: TF_AttrType,
1150    pub total_size: i64,
1151}
1152#[test]
1153fn bindgen_test_layout_TF_AttrMetadata() {
1154    assert_eq!(
1155        ::std::mem::size_of::<TF_AttrMetadata>(),
1156        32usize,
1157        concat!("Size of: ", stringify!(TF_AttrMetadata))
1158    );
1159    assert_eq!(
1160        ::std::mem::align_of::<TF_AttrMetadata>(),
1161        8usize,
1162        concat!("Alignment of ", stringify!(TF_AttrMetadata))
1163    );
1164    assert_eq!(
1165        unsafe { &(*(::std::ptr::null::<TF_AttrMetadata>())).is_list as *const _ as usize },
1166        0usize,
1167        concat!(
1168            "Offset of field: ",
1169            stringify!(TF_AttrMetadata),
1170            "::",
1171            stringify!(is_list)
1172        )
1173    );
1174    assert_eq!(
1175        unsafe { &(*(::std::ptr::null::<TF_AttrMetadata>())).list_size as *const _ as usize },
1176        8usize,
1177        concat!(
1178            "Offset of field: ",
1179            stringify!(TF_AttrMetadata),
1180            "::",
1181            stringify!(list_size)
1182        )
1183    );
1184    assert_eq!(
1185        unsafe { &(*(::std::ptr::null::<TF_AttrMetadata>())).type_ as *const _ as usize },
1186        16usize,
1187        concat!(
1188            "Offset of field: ",
1189            stringify!(TF_AttrMetadata),
1190            "::",
1191            stringify!(type_)
1192        )
1193    );
1194    assert_eq!(
1195        unsafe { &(*(::std::ptr::null::<TF_AttrMetadata>())).total_size as *const _ as usize },
1196        24usize,
1197        concat!(
1198            "Offset of field: ",
1199            stringify!(TF_AttrMetadata),
1200            "::",
1201            stringify!(total_size)
1202        )
1203    );
1204}
1205extern "C" {
1206    pub fn TF_OperationGetAttrMetadata(
1207        oper: *mut TF_Operation,
1208        attr_name: *const ::std::os::raw::c_char,
1209        status: *mut TF_Status,
1210    ) -> TF_AttrMetadata;
1211}
1212extern "C" {
1213    pub fn TF_OperationGetAttrString(
1214        oper: *mut TF_Operation,
1215        attr_name: *const ::std::os::raw::c_char,
1216        value: *mut ::std::os::raw::c_void,
1217        max_length: usize,
1218        status: *mut TF_Status,
1219    );
1220}
1221extern "C" {
1222    pub fn TF_OperationGetAttrStringList(
1223        oper: *mut TF_Operation,
1224        attr_name: *const ::std::os::raw::c_char,
1225        values: *mut *mut ::std::os::raw::c_void,
1226        lengths: *mut usize,
1227        max_values: ::std::os::raw::c_int,
1228        storage: *mut ::std::os::raw::c_void,
1229        storage_size: usize,
1230        status: *mut TF_Status,
1231    );
1232}
1233extern "C" {
1234    pub fn TF_OperationGetAttrInt(
1235        oper: *mut TF_Operation,
1236        attr_name: *const ::std::os::raw::c_char,
1237        value: *mut i64,
1238        status: *mut TF_Status,
1239    );
1240}
1241extern "C" {
1242    pub fn TF_OperationGetAttrIntList(
1243        oper: *mut TF_Operation,
1244        attr_name: *const ::std::os::raw::c_char,
1245        values: *mut i64,
1246        max_values: ::std::os::raw::c_int,
1247        status: *mut TF_Status,
1248    );
1249}
1250extern "C" {
1251    pub fn TF_OperationGetAttrFloat(
1252        oper: *mut TF_Operation,
1253        attr_name: *const ::std::os::raw::c_char,
1254        value: *mut f32,
1255        status: *mut TF_Status,
1256    );
1257}
1258extern "C" {
1259    pub fn TF_OperationGetAttrFloatList(
1260        oper: *mut TF_Operation,
1261        attr_name: *const ::std::os::raw::c_char,
1262        values: *mut f32,
1263        max_values: ::std::os::raw::c_int,
1264        status: *mut TF_Status,
1265    );
1266}
1267extern "C" {
1268    pub fn TF_OperationGetAttrBool(
1269        oper: *mut TF_Operation,
1270        attr_name: *const ::std::os::raw::c_char,
1271        value: *mut ::std::os::raw::c_uchar,
1272        status: *mut TF_Status,
1273    );
1274}
1275extern "C" {
1276    pub fn TF_OperationGetAttrBoolList(
1277        oper: *mut TF_Operation,
1278        attr_name: *const ::std::os::raw::c_char,
1279        values: *mut ::std::os::raw::c_uchar,
1280        max_values: ::std::os::raw::c_int,
1281        status: *mut TF_Status,
1282    );
1283}
1284extern "C" {
1285    pub fn TF_OperationGetAttrType(
1286        oper: *mut TF_Operation,
1287        attr_name: *const ::std::os::raw::c_char,
1288        value: *mut TF_DataType,
1289        status: *mut TF_Status,
1290    );
1291}
1292extern "C" {
1293    pub fn TF_OperationGetAttrTypeList(
1294        oper: *mut TF_Operation,
1295        attr_name: *const ::std::os::raw::c_char,
1296        values: *mut TF_DataType,
1297        max_values: ::std::os::raw::c_int,
1298        status: *mut TF_Status,
1299    );
1300}
1301extern "C" {
1302    pub fn TF_OperationGetAttrShape(
1303        oper: *mut TF_Operation,
1304        attr_name: *const ::std::os::raw::c_char,
1305        value: *mut i64,
1306        num_dims: ::std::os::raw::c_int,
1307        status: *mut TF_Status,
1308    );
1309}
1310extern "C" {
1311    pub fn TF_OperationGetAttrShapeList(
1312        oper: *mut TF_Operation,
1313        attr_name: *const ::std::os::raw::c_char,
1314        dims: *mut *mut i64,
1315        num_dims: *mut ::std::os::raw::c_int,
1316        num_shapes: ::std::os::raw::c_int,
1317        storage: *mut i64,
1318        storage_size: ::std::os::raw::c_int,
1319        status: *mut TF_Status,
1320    );
1321}
1322extern "C" {
1323    pub fn TF_OperationGetAttrTensorShapeProto(
1324        oper: *mut TF_Operation,
1325        attr_name: *const ::std::os::raw::c_char,
1326        value: *mut TF_Buffer,
1327        status: *mut TF_Status,
1328    );
1329}
1330extern "C" {
1331    pub fn TF_OperationGetAttrTensorShapeProtoList(
1332        oper: *mut TF_Operation,
1333        attr_name: *const ::std::os::raw::c_char,
1334        values: *mut *mut TF_Buffer,
1335        max_values: ::std::os::raw::c_int,
1336        status: *mut TF_Status,
1337    );
1338}
1339extern "C" {
1340    pub fn TF_OperationGetAttrTensor(
1341        oper: *mut TF_Operation,
1342        attr_name: *const ::std::os::raw::c_char,
1343        value: *mut *mut TF_Tensor,
1344        status: *mut TF_Status,
1345    );
1346}
1347extern "C" {
1348    pub fn TF_OperationGetAttrTensorList(
1349        oper: *mut TF_Operation,
1350        attr_name: *const ::std::os::raw::c_char,
1351        values: *mut *mut TF_Tensor,
1352        max_values: ::std::os::raw::c_int,
1353        status: *mut TF_Status,
1354    );
1355}
1356extern "C" {
1357    pub fn TF_OperationGetAttrValueProto(
1358        oper: *mut TF_Operation,
1359        attr_name: *const ::std::os::raw::c_char,
1360        output_attr_value: *mut TF_Buffer,
1361        status: *mut TF_Status,
1362    );
1363}
1364extern "C" {
1365    pub fn TF_GraphOperationByName(
1366        graph: *mut TF_Graph,
1367        oper_name: *const ::std::os::raw::c_char,
1368    ) -> *mut TF_Operation;
1369}
1370extern "C" {
1371    pub fn TF_GraphNextOperation(graph: *mut TF_Graph, pos: *mut usize) -> *mut TF_Operation;
1372}
1373extern "C" {
1374    pub fn TF_GraphToGraphDef(
1375        graph: *mut TF_Graph,
1376        output_graph_def: *mut TF_Buffer,
1377        status: *mut TF_Status,
1378    );
1379}
1380extern "C" {
1381    pub fn TF_GraphGetOpDef(
1382        graph: *mut TF_Graph,
1383        op_name: *const ::std::os::raw::c_char,
1384        output_op_def: *mut TF_Buffer,
1385        status: *mut TF_Status,
1386    );
1387}
1388extern "C" {
1389    pub fn TF_GraphVersions(
1390        graph: *mut TF_Graph,
1391        output_version_def: *mut TF_Buffer,
1392        status: *mut TF_Status,
1393    );
1394}
1395#[repr(C)]
1396#[derive(Debug, Copy, Clone)]
1397pub struct TF_ImportGraphDefOptions {
1398    _unused: [u8; 0],
1399}
1400extern "C" {
1401    pub fn TF_NewImportGraphDefOptions() -> *mut TF_ImportGraphDefOptions;
1402}
1403extern "C" {
1404    pub fn TF_DeleteImportGraphDefOptions(opts: *mut TF_ImportGraphDefOptions);
1405}
1406extern "C" {
1407    pub fn TF_ImportGraphDefOptionsSetPrefix(
1408        opts: *mut TF_ImportGraphDefOptions,
1409        prefix: *const ::std::os::raw::c_char,
1410    );
1411}
1412extern "C" {
1413    pub fn TF_ImportGraphDefOptionsSetDefaultDevice(
1414        opts: *mut TF_ImportGraphDefOptions,
1415        device: *const ::std::os::raw::c_char,
1416    );
1417}
1418extern "C" {
1419    pub fn TF_ImportGraphDefOptionsSetUniquifyNames(
1420        opts: *mut TF_ImportGraphDefOptions,
1421        uniquify_names: ::std::os::raw::c_uchar,
1422    );
1423}
1424extern "C" {
1425    pub fn TF_ImportGraphDefOptionsSetUniquifyPrefix(
1426        opts: *mut TF_ImportGraphDefOptions,
1427        uniquify_prefix: ::std::os::raw::c_uchar,
1428    );
1429}
1430extern "C" {
1431    pub fn TF_ImportGraphDefOptionsAddInputMapping(
1432        opts: *mut TF_ImportGraphDefOptions,
1433        src_name: *const ::std::os::raw::c_char,
1434        src_index: ::std::os::raw::c_int,
1435        dst: TF_Output,
1436    );
1437}
1438extern "C" {
1439    pub fn TF_ImportGraphDefOptionsRemapControlDependency(
1440        opts: *mut TF_ImportGraphDefOptions,
1441        src_name: *const ::std::os::raw::c_char,
1442        dst: *mut TF_Operation,
1443    );
1444}
1445extern "C" {
1446    pub fn TF_ImportGraphDefOptionsAddControlDependency(
1447        opts: *mut TF_ImportGraphDefOptions,
1448        oper: *mut TF_Operation,
1449    );
1450}
1451extern "C" {
1452    pub fn TF_ImportGraphDefOptionsAddReturnOutput(
1453        opts: *mut TF_ImportGraphDefOptions,
1454        oper_name: *const ::std::os::raw::c_char,
1455        index: ::std::os::raw::c_int,
1456    );
1457}
1458extern "C" {
1459    pub fn TF_ImportGraphDefOptionsNumReturnOutputs(
1460        opts: *const TF_ImportGraphDefOptions,
1461    ) -> ::std::os::raw::c_int;
1462}
1463extern "C" {
1464    pub fn TF_ImportGraphDefOptionsAddReturnOperation(
1465        opts: *mut TF_ImportGraphDefOptions,
1466        oper_name: *const ::std::os::raw::c_char,
1467    );
1468}
1469extern "C" {
1470    pub fn TF_ImportGraphDefOptionsNumReturnOperations(
1471        opts: *const TF_ImportGraphDefOptions,
1472    ) -> ::std::os::raw::c_int;
1473}
1474#[repr(C)]
1475#[derive(Debug, Copy, Clone)]
1476pub struct TF_ImportGraphDefResults {
1477    _unused: [u8; 0],
1478}
1479extern "C" {
1480    pub fn TF_ImportGraphDefResultsReturnOutputs(
1481        results: *mut TF_ImportGraphDefResults,
1482        num_outputs: *mut ::std::os::raw::c_int,
1483        outputs: *mut *mut TF_Output,
1484    );
1485}
1486extern "C" {
1487    pub fn TF_ImportGraphDefResultsReturnOperations(
1488        results: *mut TF_ImportGraphDefResults,
1489        num_opers: *mut ::std::os::raw::c_int,
1490        opers: *mut *mut *mut TF_Operation,
1491    );
1492}
1493extern "C" {
1494    pub fn TF_ImportGraphDefResultsMissingUnusedInputMappings(
1495        results: *mut TF_ImportGraphDefResults,
1496        num_missing_unused_input_mappings: *mut ::std::os::raw::c_int,
1497        src_names: *mut *mut *const ::std::os::raw::c_char,
1498        src_indexes: *mut *mut ::std::os::raw::c_int,
1499    );
1500}
1501extern "C" {
1502    pub fn TF_DeleteImportGraphDefResults(results: *mut TF_ImportGraphDefResults);
1503}
1504extern "C" {
1505    pub fn TF_GraphImportGraphDefWithResults(
1506        graph: *mut TF_Graph,
1507        graph_def: *const TF_Buffer,
1508        options: *const TF_ImportGraphDefOptions,
1509        status: *mut TF_Status,
1510    ) -> *mut TF_ImportGraphDefResults;
1511}
1512extern "C" {
1513    pub fn TF_GraphImportGraphDefWithReturnOutputs(
1514        graph: *mut TF_Graph,
1515        graph_def: *const TF_Buffer,
1516        options: *const TF_ImportGraphDefOptions,
1517        return_outputs: *mut TF_Output,
1518        num_return_outputs: ::std::os::raw::c_int,
1519        status: *mut TF_Status,
1520    );
1521}
1522extern "C" {
1523    pub fn TF_GraphImportGraphDef(
1524        graph: *mut TF_Graph,
1525        graph_def: *const TF_Buffer,
1526        options: *const TF_ImportGraphDefOptions,
1527        status: *mut TF_Status,
1528    );
1529}
1530extern "C" {
1531    pub fn TF_GraphCopyFunction(
1532        g: *mut TF_Graph,
1533        func: *const TF_Function,
1534        grad: *const TF_Function,
1535        status: *mut TF_Status,
1536    );
1537}
1538extern "C" {
1539    pub fn TF_GraphNumFunctions(g: *mut TF_Graph) -> ::std::os::raw::c_int;
1540}
1541extern "C" {
1542    pub fn TF_GraphGetFunctions(
1543        g: *mut TF_Graph,
1544        funcs: *mut *mut TF_Function,
1545        max_func: ::std::os::raw::c_int,
1546        status: *mut TF_Status,
1547    ) -> ::std::os::raw::c_int;
1548}
1549extern "C" {
1550    pub fn TF_OperationToNodeDef(
1551        oper: *mut TF_Operation,
1552        output_node_def: *mut TF_Buffer,
1553        status: *mut TF_Status,
1554    );
1555}
1556#[repr(C)]
1557#[derive(Debug, Copy, Clone)]
1558pub struct TF_WhileParams {
1559    pub ninputs: ::std::os::raw::c_int,
1560    pub cond_graph: *mut TF_Graph,
1561    pub cond_inputs: *const TF_Output,
1562    pub cond_output: TF_Output,
1563    pub body_graph: *mut TF_Graph,
1564    pub body_inputs: *const TF_Output,
1565    pub body_outputs: *mut TF_Output,
1566    pub name: *const ::std::os::raw::c_char,
1567}
1568#[test]
1569fn bindgen_test_layout_TF_WhileParams() {
1570    assert_eq!(
1571        ::std::mem::size_of::<TF_WhileParams>(),
1572        72usize,
1573        concat!("Size of: ", stringify!(TF_WhileParams))
1574    );
1575    assert_eq!(
1576        ::std::mem::align_of::<TF_WhileParams>(),
1577        8usize,
1578        concat!("Alignment of ", stringify!(TF_WhileParams))
1579    );
1580    assert_eq!(
1581        unsafe { &(*(::std::ptr::null::<TF_WhileParams>())).ninputs as *const _ as usize },
1582        0usize,
1583        concat!(
1584            "Offset of field: ",
1585            stringify!(TF_WhileParams),
1586            "::",
1587            stringify!(ninputs)
1588        )
1589    );
1590    assert_eq!(
1591        unsafe { &(*(::std::ptr::null::<TF_WhileParams>())).cond_graph as *const _ as usize },
1592        8usize,
1593        concat!(
1594            "Offset of field: ",
1595            stringify!(TF_WhileParams),
1596            "::",
1597            stringify!(cond_graph)
1598        )
1599    );
1600    assert_eq!(
1601        unsafe { &(*(::std::ptr::null::<TF_WhileParams>())).cond_inputs as *const _ as usize },
1602        16usize,
1603        concat!(
1604            "Offset of field: ",
1605            stringify!(TF_WhileParams),
1606            "::",
1607            stringify!(cond_inputs)
1608        )
1609    );
1610    assert_eq!(
1611        unsafe { &(*(::std::ptr::null::<TF_WhileParams>())).cond_output as *const _ as usize },
1612        24usize,
1613        concat!(
1614            "Offset of field: ",
1615            stringify!(TF_WhileParams),
1616            "::",
1617            stringify!(cond_output)
1618        )
1619    );
1620    assert_eq!(
1621        unsafe { &(*(::std::ptr::null::<TF_WhileParams>())).body_graph as *const _ as usize },
1622        40usize,
1623        concat!(
1624            "Offset of field: ",
1625            stringify!(TF_WhileParams),
1626            "::",
1627            stringify!(body_graph)
1628        )
1629    );
1630    assert_eq!(
1631        unsafe { &(*(::std::ptr::null::<TF_WhileParams>())).body_inputs as *const _ as usize },
1632        48usize,
1633        concat!(
1634            "Offset of field: ",
1635            stringify!(TF_WhileParams),
1636            "::",
1637            stringify!(body_inputs)
1638        )
1639    );
1640    assert_eq!(
1641        unsafe { &(*(::std::ptr::null::<TF_WhileParams>())).body_outputs as *const _ as usize },
1642        56usize,
1643        concat!(
1644            "Offset of field: ",
1645            stringify!(TF_WhileParams),
1646            "::",
1647            stringify!(body_outputs)
1648        )
1649    );
1650    assert_eq!(
1651        unsafe { &(*(::std::ptr::null::<TF_WhileParams>())).name as *const _ as usize },
1652        64usize,
1653        concat!(
1654            "Offset of field: ",
1655            stringify!(TF_WhileParams),
1656            "::",
1657            stringify!(name)
1658        )
1659    );
1660}
1661extern "C" {
1662    pub fn TF_NewWhile(
1663        g: *mut TF_Graph,
1664        inputs: *mut TF_Output,
1665        ninputs: ::std::os::raw::c_int,
1666        status: *mut TF_Status,
1667    ) -> TF_WhileParams;
1668}
1669extern "C" {
1670    pub fn TF_FinishWhile(
1671        params: *const TF_WhileParams,
1672        status: *mut TF_Status,
1673        outputs: *mut TF_Output,
1674    );
1675}
1676extern "C" {
1677    pub fn TF_AbortWhile(params: *const TF_WhileParams);
1678}
1679extern "C" {
1680    pub fn TF_AddGradients(
1681        g: *mut TF_Graph,
1682        y: *mut TF_Output,
1683        ny: ::std::os::raw::c_int,
1684        x: *mut TF_Output,
1685        nx: ::std::os::raw::c_int,
1686        dx: *mut TF_Output,
1687        status: *mut TF_Status,
1688        dy: *mut TF_Output,
1689    );
1690}
1691extern "C" {
1692    pub fn TF_AddGradientsWithPrefix(
1693        g: *mut TF_Graph,
1694        prefix: *const ::std::os::raw::c_char,
1695        y: *mut TF_Output,
1696        ny: ::std::os::raw::c_int,
1697        x: *mut TF_Output,
1698        nx: ::std::os::raw::c_int,
1699        dx: *mut TF_Output,
1700        status: *mut TF_Status,
1701        dy: *mut TF_Output,
1702    );
1703}
1704extern "C" {
1705    pub fn TF_GraphToFunction(
1706        fn_body: *const TF_Graph,
1707        fn_name: *const ::std::os::raw::c_char,
1708        append_hash_to_fn_name: ::std::os::raw::c_uchar,
1709        num_opers: ::std::os::raw::c_int,
1710        opers: *const *const TF_Operation,
1711        ninputs: ::std::os::raw::c_int,
1712        inputs: *const TF_Output,
1713        noutputs: ::std::os::raw::c_int,
1714        outputs: *const TF_Output,
1715        output_names: *const *const ::std::os::raw::c_char,
1716        opts: *const TF_FunctionOptions,
1717        description: *const ::std::os::raw::c_char,
1718        status: *mut TF_Status,
1719    ) -> *mut TF_Function;
1720}
1721extern "C" {
1722    pub fn TF_GraphToFunctionWithControlOutputs(
1723        fn_body: *const TF_Graph,
1724        fn_name: *const ::std::os::raw::c_char,
1725        append_hash_to_fn_name: ::std::os::raw::c_uchar,
1726        num_opers: ::std::os::raw::c_int,
1727        opers: *const *const TF_Operation,
1728        ninputs: ::std::os::raw::c_int,
1729        inputs: *const TF_Output,
1730        noutputs: ::std::os::raw::c_int,
1731        outputs: *const TF_Output,
1732        output_names: *const *const ::std::os::raw::c_char,
1733        ncontrol_outputs: ::std::os::raw::c_int,
1734        control_outputs: *const *const TF_Operation,
1735        control_output_names: *const *const ::std::os::raw::c_char,
1736        opts: *const TF_FunctionOptions,
1737        description: *const ::std::os::raw::c_char,
1738        status: *mut TF_Status,
1739    ) -> *mut TF_Function;
1740}
1741extern "C" {
1742    pub fn TF_FunctionName(func: *mut TF_Function) -> *const ::std::os::raw::c_char;
1743}
1744extern "C" {
1745    pub fn TF_FunctionToFunctionDef(
1746        func: *mut TF_Function,
1747        output_func_def: *mut TF_Buffer,
1748        status: *mut TF_Status,
1749    );
1750}
1751extern "C" {
1752    pub fn TF_FunctionImportFunctionDef(
1753        proto: *const ::std::os::raw::c_void,
1754        proto_len: usize,
1755        status: *mut TF_Status,
1756    ) -> *mut TF_Function;
1757}
1758extern "C" {
1759    pub fn TF_FunctionSetAttrValueProto(
1760        func: *mut TF_Function,
1761        attr_name: *const ::std::os::raw::c_char,
1762        proto: *const ::std::os::raw::c_void,
1763        proto_len: usize,
1764        status: *mut TF_Status,
1765    );
1766}
1767extern "C" {
1768    pub fn TF_FunctionGetAttrValueProto(
1769        func: *mut TF_Function,
1770        attr_name: *const ::std::os::raw::c_char,
1771        output_attr_value: *mut TF_Buffer,
1772        status: *mut TF_Status,
1773    );
1774}
1775extern "C" {
1776    pub fn TF_DeleteFunction(func: *mut TF_Function);
1777}
1778extern "C" {
1779    pub fn TF_TryEvaluateConstant(
1780        graph: *mut TF_Graph,
1781        output: TF_Output,
1782        result: *mut *mut TF_Tensor,
1783        status: *mut TF_Status,
1784    ) -> ::std::os::raw::c_uchar;
1785}
1786#[repr(C)]
1787#[derive(Debug, Copy, Clone)]
1788pub struct TF_Session {
1789    _unused: [u8; 0],
1790}
1791extern "C" {
1792    pub fn TF_NewSession(
1793        graph: *mut TF_Graph,
1794        opts: *const TF_SessionOptions,
1795        status: *mut TF_Status,
1796    ) -> *mut TF_Session;
1797}
1798extern "C" {
1799    pub fn TF_LoadSessionFromSavedModel(
1800        session_options: *const TF_SessionOptions,
1801        run_options: *const TF_Buffer,
1802        export_dir: *const ::std::os::raw::c_char,
1803        tags: *const *const ::std::os::raw::c_char,
1804        tags_len: ::std::os::raw::c_int,
1805        graph: *mut TF_Graph,
1806        meta_graph_def: *mut TF_Buffer,
1807        status: *mut TF_Status,
1808    ) -> *mut TF_Session;
1809}
1810extern "C" {
1811    pub fn TF_CloseSession(arg1: *mut TF_Session, status: *mut TF_Status);
1812}
1813extern "C" {
1814    pub fn TF_DeleteSession(arg1: *mut TF_Session, status: *mut TF_Status);
1815}
1816extern "C" {
1817    pub fn TF_SessionRun(
1818        session: *mut TF_Session,
1819        run_options: *const TF_Buffer,
1820        inputs: *const TF_Output,
1821        input_values: *const *mut TF_Tensor,
1822        ninputs: ::std::os::raw::c_int,
1823        outputs: *const TF_Output,
1824        output_values: *mut *mut TF_Tensor,
1825        noutputs: ::std::os::raw::c_int,
1826        target_opers: *const *const TF_Operation,
1827        ntargets: ::std::os::raw::c_int,
1828        run_metadata: *mut TF_Buffer,
1829        arg1: *mut TF_Status,
1830    );
1831}
1832extern "C" {
1833    pub fn TF_SessionPRunSetup(
1834        arg1: *mut TF_Session,
1835        inputs: *const TF_Output,
1836        ninputs: ::std::os::raw::c_int,
1837        outputs: *const TF_Output,
1838        noutputs: ::std::os::raw::c_int,
1839        target_opers: *const *const TF_Operation,
1840        ntargets: ::std::os::raw::c_int,
1841        handle: *mut *const ::std::os::raw::c_char,
1842        arg2: *mut TF_Status,
1843    );
1844}
1845extern "C" {
1846    pub fn TF_SessionPRun(
1847        arg1: *mut TF_Session,
1848        handle: *const ::std::os::raw::c_char,
1849        inputs: *const TF_Output,
1850        input_values: *const *mut TF_Tensor,
1851        ninputs: ::std::os::raw::c_int,
1852        outputs: *const TF_Output,
1853        output_values: *mut *mut TF_Tensor,
1854        noutputs: ::std::os::raw::c_int,
1855        target_opers: *const *const TF_Operation,
1856        ntargets: ::std::os::raw::c_int,
1857        arg2: *mut TF_Status,
1858    );
1859}
1860extern "C" {
1861    pub fn TF_DeletePRunHandle(handle: *const ::std::os::raw::c_char);
1862}
1863#[repr(C)]
1864#[derive(Debug, Copy, Clone)]
1865pub struct TF_DeprecatedSession {
1866    _unused: [u8; 0],
1867}
1868extern "C" {
1869    pub fn TF_NewDeprecatedSession(
1870        arg1: *const TF_SessionOptions,
1871        status: *mut TF_Status,
1872    ) -> *mut TF_DeprecatedSession;
1873}
1874extern "C" {
1875    pub fn TF_CloseDeprecatedSession(arg1: *mut TF_DeprecatedSession, status: *mut TF_Status);
1876}
1877extern "C" {
1878    pub fn TF_DeleteDeprecatedSession(arg1: *mut TF_DeprecatedSession, status: *mut TF_Status);
1879}
1880extern "C" {
1881    pub fn TF_Reset(
1882        opt: *const TF_SessionOptions,
1883        containers: *mut *const ::std::os::raw::c_char,
1884        ncontainers: ::std::os::raw::c_int,
1885        status: *mut TF_Status,
1886    );
1887}
1888extern "C" {
1889    pub fn TF_ExtendGraph(
1890        arg1: *mut TF_DeprecatedSession,
1891        proto: *const ::std::os::raw::c_void,
1892        proto_len: usize,
1893        arg2: *mut TF_Status,
1894    );
1895}
1896extern "C" {
1897    pub fn TF_Run(
1898        arg1: *mut TF_DeprecatedSession,
1899        run_options: *const TF_Buffer,
1900        input_names: *mut *const ::std::os::raw::c_char,
1901        inputs: *mut *mut TF_Tensor,
1902        ninputs: ::std::os::raw::c_int,
1903        output_names: *mut *const ::std::os::raw::c_char,
1904        outputs: *mut *mut TF_Tensor,
1905        noutputs: ::std::os::raw::c_int,
1906        target_oper_names: *mut *const ::std::os::raw::c_char,
1907        ntargets: ::std::os::raw::c_int,
1908        run_metadata: *mut TF_Buffer,
1909        arg2: *mut TF_Status,
1910    );
1911}
1912extern "C" {
1913    pub fn TF_PRunSetup(
1914        arg1: *mut TF_DeprecatedSession,
1915        input_names: *mut *const ::std::os::raw::c_char,
1916        ninputs: ::std::os::raw::c_int,
1917        output_names: *mut *const ::std::os::raw::c_char,
1918        noutputs: ::std::os::raw::c_int,
1919        target_oper_names: *mut *const ::std::os::raw::c_char,
1920        ntargets: ::std::os::raw::c_int,
1921        handle: *mut *const ::std::os::raw::c_char,
1922        arg2: *mut TF_Status,
1923    );
1924}
1925extern "C" {
1926    pub fn TF_PRun(
1927        arg1: *mut TF_DeprecatedSession,
1928        handle: *const ::std::os::raw::c_char,
1929        input_names: *mut *const ::std::os::raw::c_char,
1930        inputs: *mut *mut TF_Tensor,
1931        ninputs: ::std::os::raw::c_int,
1932        output_names: *mut *const ::std::os::raw::c_char,
1933        outputs: *mut *mut TF_Tensor,
1934        noutputs: ::std::os::raw::c_int,
1935        target_oper_names: *mut *const ::std::os::raw::c_char,
1936        ntargets: ::std::os::raw::c_int,
1937        arg2: *mut TF_Status,
1938    );
1939}
1940#[repr(C)]
1941#[derive(Debug, Copy, Clone)]
1942pub struct TF_DeviceList {
1943    _unused: [u8; 0],
1944}
1945extern "C" {
1946    pub fn TF_SessionListDevices(
1947        session: *mut TF_Session,
1948        status: *mut TF_Status,
1949    ) -> *mut TF_DeviceList;
1950}
1951extern "C" {
1952    pub fn TF_DeprecatedSessionListDevices(
1953        session: *mut TF_DeprecatedSession,
1954        status: *mut TF_Status,
1955    ) -> *mut TF_DeviceList;
1956}
1957extern "C" {
1958    pub fn TF_DeleteDeviceList(list: *mut TF_DeviceList);
1959}
1960extern "C" {
1961    pub fn TF_DeviceListCount(list: *const TF_DeviceList) -> ::std::os::raw::c_int;
1962}
1963extern "C" {
1964    pub fn TF_DeviceListName(
1965        list: *const TF_DeviceList,
1966        index: ::std::os::raw::c_int,
1967        status: *mut TF_Status,
1968    ) -> *const ::std::os::raw::c_char;
1969}
1970extern "C" {
1971    pub fn TF_DeviceListType(
1972        list: *const TF_DeviceList,
1973        index: ::std::os::raw::c_int,
1974        status: *mut TF_Status,
1975    ) -> *const ::std::os::raw::c_char;
1976}
1977extern "C" {
1978    pub fn TF_DeviceListMemoryBytes(
1979        list: *const TF_DeviceList,
1980        index: ::std::os::raw::c_int,
1981        status: *mut TF_Status,
1982    ) -> i64;
1983}
1984extern "C" {
1985    pub fn TF_DeviceListIncarnation(
1986        list: *const TF_DeviceList,
1987        index: ::std::os::raw::c_int,
1988        status: *mut TF_Status,
1989    ) -> u64;
1990}
1991#[repr(C)]
1992#[derive(Debug, Copy, Clone)]
1993pub struct TF_Library {
1994    _unused: [u8; 0],
1995}
1996extern "C" {
1997    pub fn TF_LoadLibrary(
1998        library_filename: *const ::std::os::raw::c_char,
1999        status: *mut TF_Status,
2000    ) -> *mut TF_Library;
2001}
2002extern "C" {
2003    pub fn TF_GetOpList(lib_handle: *mut TF_Library) -> TF_Buffer;
2004}
2005extern "C" {
2006    pub fn TF_DeleteLibraryHandle(lib_handle: *mut TF_Library);
2007}
2008extern "C" {
2009    pub fn TF_GetAllOpList() -> *mut TF_Buffer;
2010}
2011#[repr(C)]
2012#[derive(Debug, Copy, Clone)]
2013pub struct TF_ApiDefMap {
2014    _unused: [u8; 0],
2015}
2016extern "C" {
2017    pub fn TF_NewApiDefMap(
2018        op_list_buffer: *mut TF_Buffer,
2019        status: *mut TF_Status,
2020    ) -> *mut TF_ApiDefMap;
2021}
2022extern "C" {
2023    pub fn TF_DeleteApiDefMap(apimap: *mut TF_ApiDefMap);
2024}
2025extern "C" {
2026    pub fn TF_ApiDefMapPut(
2027        api_def_map: *mut TF_ApiDefMap,
2028        text: *const ::std::os::raw::c_char,
2029        text_len: usize,
2030        status: *mut TF_Status,
2031    );
2032}
2033extern "C" {
2034    pub fn TF_ApiDefMapGet(
2035        api_def_map: *mut TF_ApiDefMap,
2036        name: *const ::std::os::raw::c_char,
2037        name_len: usize,
2038        status: *mut TF_Status,
2039    ) -> *mut TF_Buffer;
2040}
2041extern "C" {
2042    pub fn TF_GetAllRegisteredKernels(status: *mut TF_Status) -> *mut TF_Buffer;
2043}
2044extern "C" {
2045    pub fn TF_GetRegisteredKernelsForOp(
2046        name: *const ::std::os::raw::c_char,
2047        status: *mut TF_Status,
2048    ) -> *mut TF_Buffer;
2049}
2050extern "C" {
2051    pub fn TF_UpdateEdge(
2052        graph: *mut TF_Graph,
2053        new_src: TF_Output,
2054        dst: TF_Input,
2055        status: *mut TF_Status,
2056    );
2057}
2058#[repr(C)]
2059#[derive(Debug, Copy, Clone)]
2060pub struct TF_Server {
2061    _unused: [u8; 0],
2062}
2063extern "C" {
2064    pub fn TF_NewServer(
2065        proto: *const ::std::os::raw::c_void,
2066        proto_len: usize,
2067        status: *mut TF_Status,
2068    ) -> *mut TF_Server;
2069}
2070extern "C" {
2071    pub fn TF_ServerStart(server: *mut TF_Server, status: *mut TF_Status);
2072}
2073extern "C" {
2074    pub fn TF_ServerStop(server: *mut TF_Server, status: *mut TF_Status);
2075}
2076extern "C" {
2077    pub fn TF_ServerJoin(server: *mut TF_Server, status: *mut TF_Status);
2078}
2079extern "C" {
2080    pub fn TF_ServerTarget(server: *mut TF_Server) -> *const ::std::os::raw::c_char;
2081}
2082extern "C" {
2083    pub fn TF_DeleteServer(server: *mut TF_Server);
2084}
2085extern "C" {
2086    pub fn TF_RegisterLogListener(
2087        listener: ::std::option::Option<unsafe extern "C" fn(arg1: *const ::std::os::raw::c_char)>,
2088    );
2089}
2090extern "C" {
2091    pub fn TF_RegisterFilesystemPlugin(
2092        plugin_filename: *const ::std::os::raw::c_char,
2093        status: *mut TF_Status,
2094    );
2095}