Struct makepad_shader_compiler::shader_ast::FnDef
source · [−]pub struct FnDef {Show 20 fields
pub fn_ptr: FnPtr,
pub ident: Ident,
pub self_kind: Option<FnSelfKind>,
pub has_return: Cell<bool>,
pub callees: RefCell<Option<BTreeSet<FnPtr>>>,
pub builtin_deps: RefCell<Option<BTreeSet<Ident>>>,
pub const_table: RefCell<Option<Vec<f32>>>,
pub const_table_spans: RefCell<Option<Vec<ConstTableSpan>>>,
pub hidden_args: RefCell<Option<BTreeSet<HiddenArgKind>>>,
pub draw_shader_refs: RefCell<Option<BTreeSet<Ident>>>,
pub live_refs: RefCell<Option<BTreeMap<ValuePtr, Ty>>>,
pub struct_refs: RefCell<Option<BTreeSet<StructPtr>>>,
pub constructor_fn_deps: RefCell<Option<BTreeSet<(TyLit, Vec<Ty>)>>>,
pub closure_defs: Vec<ClosureDef>,
pub closure_sites: RefCell<Option<Vec<ClosureSite>>>,
pub span: TokenSpan,
pub return_ty: RefCell<Option<Ty>>,
pub params: Vec<Param>,
pub return_ty_expr: Option<TyExpr>,
pub block: Block,
}
Fields
fn_ptr: FnPtr
ident: Ident
self_kind: Option<FnSelfKind>
has_return: Cell<bool>
callees: RefCell<Option<BTreeSet<FnPtr>>>
builtin_deps: RefCell<Option<BTreeSet<Ident>>>
const_table: RefCell<Option<Vec<f32>>>
const_table_spans: RefCell<Option<Vec<ConstTableSpan>>>
draw_shader_refs: RefCell<Option<BTreeSet<Ident>>>
live_refs: RefCell<Option<BTreeMap<ValuePtr, Ty>>>
struct_refs: RefCell<Option<BTreeSet<StructPtr>>>
constructor_fn_deps: RefCell<Option<BTreeSet<(TyLit, Vec<Ty>)>>>
closure_defs: Vec<ClosureDef>
closure_sites: RefCell<Option<Vec<ClosureSite>>>
span: TokenSpan
return_ty: RefCell<Option<Ty>>
params: Vec<Param>
return_ty_expr: Option<TyExpr>
block: Block
Implementations
Trait Implementations
Auto Trait Implementations
impl !RefUnwindSafe for FnDef
impl !Send for FnDef
impl !Sync for FnDef
impl Unpin for FnDef
impl UnwindSafe for FnDef
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