Struct pgrx_sql_entity_graph::PgExtern
source · pub struct PgExtern { /* private fields */ }
Expand description
A parsed #[pg_extern]
item.
It should be used with syn::parse::Parse
functions.
Using quote::ToTokens
will output the declaration for a PgExternEntity
.
use syn::{Macro, parse::Parse, parse_quote, parse};
use quote::{quote, ToTokens};
use pgrx_sql_entity_graph::PgExtern;
use pgrx_sql_entity_graph::CodeEnrichment;
let parsed: CodeEnrichment<PgExtern> = parse_quote! {
fn example(x: Option<str>) -> Option<&'a str> {
unimplemented!()
}
};
let sql_graph_entity_tokens = parsed.to_token_stream();
Implementations§
source§impl PgExtern
impl PgExtern
pub fn new( attr: TokenStream2, item: TokenStream2 ) -> Result<CodeEnrichment<Self>, Error>
pub fn extern_attrs(&self) -> &[Attribute]
pub fn wrapper_func(&self) -> TokenStream2
Trait Implementations§
Auto Trait Implementations§
impl RefUnwindSafe for PgExtern
impl !Send for PgExtern
impl !Sync for PgExtern
impl Unpin for PgExtern
impl UnwindSafe for PgExtern
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more