use proc_macro as pm;
pub(crate) fn proc_doc_file(input: pm::TokenStream) -> pm::TokenStream {
#[cfg(not(feature = "doc_on"))]
return doc_off::proc_doc_file(input);
#[cfg(feature = "doc_on")]
return doc_on::proc_doc_file(input);
}
#[cfg(not(feature = "doc_on"))]
mod doc_off {
use proc_macro as pm;
pub(crate) fn proc_doc_file(_input: pm::TokenStream) -> pm::TokenStream {
pm::TokenStream::new()
}
}
#[cfg(feature = "doc_on")]
mod doc_on {
use crate::nodes::*;
use proc_macro as pm;
use proc_macro2::TokenStream;
#[cfg(feature = "doc_on")]
pub(crate) fn proc_doc_file(input: pm::TokenStream) -> pm::TokenStream {
let input = TokenStream::from(input);
let ret = DocFileNode::translate(input);
pm::TokenStream::from(ret)
}
}