// Part of the Crubit project, under the Apache License v2.0 with LLVM | |
// Exceptions. See /LICENSE for license information. | |
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception | |
use proc_macro::TokenStream; | |
use syn::parse_macro_input; | |
#[proc_macro] | |
pub fn cc_import(input: TokenStream) -> TokenStream { | |
let input = parse_macro_input!(input as cc_import_internal::CcImportMacroInput); | |
input | |
.expand_imports() | |
.unwrap_or_else(|errors| errors.into_iter().map(|e| e.into_compile_error()).collect()) | |
.into() | |
} |