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 Freeze for PgExtern
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