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§
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