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: FnPtrident: Identself_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: TokenSpanreturn_ty: RefCell<Option<Ty>>params: Vec<Param>return_ty_expr: Option<TyExpr>block: BlockImplementations
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