1 /*
2  * Copyright (C) 2020 The Android Open Source Project
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *      http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 //! Generated Rust bindings to libbinder_ndk
18 
19 use std::error::Error;
20 use std::fmt;
21 
22 #[cfg(not(target_os = "trusty"))]
23 mod bindings {
24     include!(concat!(env!("OUT_DIR"), "/bindings.rs"));
25 }
26 
27 // Trusty puts the full path to the auto-generated file in BINDGEN_INC_FILE
28 // and builds it with warnings-as-errors, so we need to use #[allow(bad_style)].
29 // We need to use cfg(target_os) instead of cfg(trusty) here because of
30 // the difference between the two build systems, which we cannot mock.
31 #[cfg(target_os = "trusty")]
32 #[allow(bad_style)]
33 mod bindings {
34     include!(env!("BINDGEN_INC_FILE"));
35 }
36 
37 pub use bindings::*;
38 
39 impl Error for android_c_interface_StatusCode {}
40 
41 impl fmt::Display for android_c_interface_StatusCode {
fmt(&self, f: &mut fmt::Formatter) -> fmt::Result42     fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
43         write!(f, "StatusCode::{:?}", self)
44     }
45 }
46