Struct pgx_utils::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 pgx_utils::sql_entity_graph::PgExtern;
let parsed: PgExtern = parse_quote! {
fn example(x: Option<str>) -> Option<&'a str> {
unimplemented!()
}
};
let sql_graph_entity_tokens = parsed.to_token_stream();
Implementations
sourceimpl PgExtern
impl PgExtern
pub fn new(attr: TokenStream2, item: TokenStream2) -> Result<Self, Error>
pub fn extern_attrs(&self) -> &[Attribute]
pub fn wrapper_func(&self) -> TokenStream2
Trait Implementations
sourceimpl ToTokens for PgExtern
impl ToTokens for PgExtern
sourcefn to_tokens(&self, tokens: &mut TokenStream2)
fn to_tokens(&self, tokens: &mut TokenStream2)
sourcefn to_token_stream(&self) -> TokenStream
fn to_token_stream(&self) -> TokenStream
sourcefn into_token_stream(self) -> TokenStream
fn into_token_stream(self) -> TokenStream
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
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
sourceimpl<T> Spanned for Twhere
T: Spanned + ?Sized,
impl<T> Spanned for Twhere
T: Spanned + ?Sized,
sourcefn span(&self) -> Span
fn span(&self) -> Span
Returns a
Span
covering the complete contents of this syntax tree
node, or Span::call_site()
if this node is empty. Read more