pub struct RenderCallback<VertexShaderId: Id = IdDefault, FragmentShaderId: Id = IdDefault, ProgramId: Id = IdDefault, UniformId: Id + IdName = IdDefault, BufferId: Id = IdDefault, AttributeId: Id + IdName = IdDefault, TextureId: Id = IdDefault, FramebufferId: Id = IdDefault, TransformFeedbackId: Id = IdDefault, VertexArrayObjectId: Id = IdDefault, UserCtx: Clone + 'static = ()>(/* private fields */);Methods from Deref<Target = Callback<dyn Fn(&RendererData<VertexShaderId, FragmentShaderId, ProgramId, UniformId, BufferId, AttributeId, TextureId, FramebufferId, TransformFeedbackId, VertexArrayObjectId, UserCtx>), RenderCallbackJs>>§
pub fn js(&self) -> Option<CallbackWithContext<J>>
pub fn rs(&self) -> Option<CallbackWithContext<R>>
pub fn js_unwrap(&self) -> CallbackWithContext<J>
pub fn rs_unwrap(&self) -> CallbackWithContext<R>
pub fn js_inner_owned(&self) -> Option<J>
pub fn rs_inner_owned(&self) -> Option<R>
Sourcepub fn call_with_no_arg(&self)
pub fn call_with_no_arg(&self)
If the function is a rust callback, the argument is supplied, otherwise the javascript function is called without any arguments.
Sourcepub fn call_with_rust_arg(&self, a: A)
pub fn call_with_rust_arg(&self, a: A)
If the function is a rust callback, the argument is supplied, otherwise the javascript function is called without any arguments.
Sourcepub fn call_with_rust_arg_and_return(&self, a: A) -> R
pub fn call_with_rust_arg_and_return(&self, a: A) -> R
If the function is a rust callback, the argument is supplied, otherwise the javascript function is called without any arguments.
Returns the result value
Sourcepub fn call_with_js_arg(&self, a: A)
pub fn call_with_js_arg(&self, a: A)
Calls either underlying callback with the argument supplied
Sourcepub fn call_with_into_js_arg(&self, a: A)
pub fn call_with_into_js_arg(&self, a: A)
Calls either underlying callback with the argument supplied
Sourcepub fn call_with_as_js_arg(&self, a: A)
pub fn call_with_as_js_arg(&self, a: A)
Calls either underlying callback with the argument supplied
Sourcepub fn call_with_into_js_arg_and_return(&self, a: A) -> R
pub fn call_with_into_js_arg_and_return(&self, a: A) -> R
Calls either underlying callback with the argument supplied and returns the resulting value
Trait Implementations§
Source§impl<VertexShaderId: Clone + Id, FragmentShaderId: Clone + Id, ProgramId: Clone + Id, UniformId: Clone + Id + IdName, BufferId: Clone + Id, AttributeId: Clone + Id + IdName, TextureId: Clone + Id, FramebufferId: Clone + Id, TransformFeedbackId: Clone + Id, VertexArrayObjectId: Clone + Id, UserCtx: Clone + Clone + 'static> Clone for RenderCallback<VertexShaderId, FragmentShaderId, ProgramId, UniformId, BufferId, AttributeId, TextureId, FramebufferId, TransformFeedbackId, VertexArrayObjectId, UserCtx>
impl<VertexShaderId: Clone + Id, FragmentShaderId: Clone + Id, ProgramId: Clone + Id, UniformId: Clone + Id + IdName, BufferId: Clone + Id, AttributeId: Clone + Id + IdName, TextureId: Clone + Id, FramebufferId: Clone + Id, TransformFeedbackId: Clone + Id, VertexArrayObjectId: Clone + Id, UserCtx: Clone + Clone + 'static> Clone for RenderCallback<VertexShaderId, FragmentShaderId, ProgramId, UniformId, BufferId, AttributeId, TextureId, FramebufferId, TransformFeedbackId, VertexArrayObjectId, UserCtx>
Source§fn clone(
&self,
) -> RenderCallback<VertexShaderId, FragmentShaderId, ProgramId, UniformId, BufferId, AttributeId, TextureId, FramebufferId, TransformFeedbackId, VertexArrayObjectId, UserCtx>
fn clone( &self, ) -> RenderCallback<VertexShaderId, FragmentShaderId, ProgramId, UniformId, BufferId, AttributeId, TextureId, FramebufferId, TransformFeedbackId, VertexArrayObjectId, UserCtx>
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl<VertexShaderId: Debug + Id, FragmentShaderId: Debug + Id, ProgramId: Debug + Id, UniformId: Debug + Id + IdName, BufferId: Debug + Id, AttributeId: Debug + Id + IdName, TextureId: Debug + Id, FramebufferId: Debug + Id, TransformFeedbackId: Debug + Id, VertexArrayObjectId: Debug + Id, UserCtx: Debug + Clone + 'static> Debug for RenderCallback<VertexShaderId, FragmentShaderId, ProgramId, UniformId, BufferId, AttributeId, TextureId, FramebufferId, TransformFeedbackId, VertexArrayObjectId, UserCtx>
impl<VertexShaderId: Debug + Id, FragmentShaderId: Debug + Id, ProgramId: Debug + Id, UniformId: Debug + Id + IdName, BufferId: Debug + Id, AttributeId: Debug + Id + IdName, TextureId: Debug + Id, FramebufferId: Debug + Id, TransformFeedbackId: Debug + Id, VertexArrayObjectId: Debug + Id, UserCtx: Debug + Clone + 'static> Debug for RenderCallback<VertexShaderId, FragmentShaderId, ProgramId, UniformId, BufferId, AttributeId, TextureId, FramebufferId, TransformFeedbackId, VertexArrayObjectId, UserCtx>
Source§impl<VertexShaderId: Id, FragmentShaderId: Id, ProgramId: Id, UniformId: Id + IdName, BufferId: Id, AttributeId: Id + IdName, TextureId: Id, FramebufferId: Id, TransformFeedbackId: Id, VertexArrayObjectId: Id, UserCtx: Clone> Deref for RenderCallback<VertexShaderId, FragmentShaderId, ProgramId, UniformId, BufferId, AttributeId, TextureId, FramebufferId, TransformFeedbackId, VertexArrayObjectId, UserCtx>
impl<VertexShaderId: Id, FragmentShaderId: Id, ProgramId: Id, UniformId: Id + IdName, BufferId: Id, AttributeId: Id + IdName, TextureId: Id, FramebufferId: Id, TransformFeedbackId: Id, VertexArrayObjectId: Id, UserCtx: Clone> Deref for RenderCallback<VertexShaderId, FragmentShaderId, ProgramId, UniformId, BufferId, AttributeId, TextureId, FramebufferId, TransformFeedbackId, VertexArrayObjectId, UserCtx>
Source§type Target = Callback<dyn Fn(&RendererData<VertexShaderId, FragmentShaderId, ProgramId, UniformId, BufferId, AttributeId, TextureId, FramebufferId, TransformFeedbackId, VertexArrayObjectId, UserCtx>), RenderCallbackJs>
type Target = Callback<dyn Fn(&RendererData<VertexShaderId, FragmentShaderId, ProgramId, UniformId, BufferId, AttributeId, TextureId, FramebufferId, TransformFeedbackId, VertexArrayObjectId, UserCtx>), RenderCallbackJs>
The resulting type after dereferencing.
Source§impl<VertexShaderId: Id, FragmentShaderId: Id, ProgramId: Id, UniformId: Id + IdName, BufferId: Id, AttributeId: Id + IdName, TextureId: Id, FramebufferId: Id, TransformFeedbackId: Id, VertexArrayObjectId: Id, UserCtx: Clone, F: Fn(&RendererData<VertexShaderId, FragmentShaderId, ProgramId, UniformId, BufferId, AttributeId, TextureId, FramebufferId, TransformFeedbackId, VertexArrayObjectId, UserCtx>) + 'static> From<F> for RenderCallback<VertexShaderId, FragmentShaderId, ProgramId, UniformId, BufferId, AttributeId, TextureId, FramebufferId, TransformFeedbackId, VertexArrayObjectId, UserCtx>
impl<VertexShaderId: Id, FragmentShaderId: Id, ProgramId: Id, UniformId: Id + IdName, BufferId: Id, AttributeId: Id + IdName, TextureId: Id, FramebufferId: Id, TransformFeedbackId: Id, VertexArrayObjectId: Id, UserCtx: Clone, F: Fn(&RendererData<VertexShaderId, FragmentShaderId, ProgramId, UniformId, BufferId, AttributeId, TextureId, FramebufferId, TransformFeedbackId, VertexArrayObjectId, UserCtx>) + 'static> From<F> for RenderCallback<VertexShaderId, FragmentShaderId, ProgramId, UniformId, BufferId, AttributeId, TextureId, FramebufferId, TransformFeedbackId, VertexArrayObjectId, UserCtx>
Source§impl<VertexShaderId: Id, FragmentShaderId: Id, ProgramId: Id, UniformId: Id + IdName, BufferId: Id, AttributeId: Id + IdName, TextureId: Id, FramebufferId: Id, TransformFeedbackId: Id, VertexArrayObjectId: Id, UserCtx: Clone, F: Fn(&RendererData<VertexShaderId, FragmentShaderId, ProgramId, UniformId, BufferId, AttributeId, TextureId, FramebufferId, TransformFeedbackId, VertexArrayObjectId, UserCtx>) + 'static> From<Rc<F>> for RenderCallback<VertexShaderId, FragmentShaderId, ProgramId, UniformId, BufferId, AttributeId, TextureId, FramebufferId, TransformFeedbackId, VertexArrayObjectId, UserCtx>
impl<VertexShaderId: Id, FragmentShaderId: Id, ProgramId: Id, UniformId: Id + IdName, BufferId: Id, AttributeId: Id + IdName, TextureId: Id, FramebufferId: Id, TransformFeedbackId: Id, VertexArrayObjectId: Id, UserCtx: Clone, F: Fn(&RendererData<VertexShaderId, FragmentShaderId, ProgramId, UniformId, BufferId, AttributeId, TextureId, FramebufferId, TransformFeedbackId, VertexArrayObjectId, UserCtx>) + 'static> From<Rc<F>> for RenderCallback<VertexShaderId, FragmentShaderId, ProgramId, UniformId, BufferId, AttributeId, TextureId, FramebufferId, TransformFeedbackId, VertexArrayObjectId, UserCtx>
Source§impl<VertexShaderId: Id, FragmentShaderId: Id, ProgramId: Id, UniformId: Id + IdName, BufferId: Id, AttributeId: Id + IdName, TextureId: Id, FramebufferId: Id, TransformFeedbackId: Id, VertexArrayObjectId: Id, UserCtx: Clone> From<RenderCallbackJs> for RenderCallback<VertexShaderId, FragmentShaderId, ProgramId, UniformId, BufferId, AttributeId, TextureId, FramebufferId, TransformFeedbackId, VertexArrayObjectId, UserCtx>
impl<VertexShaderId: Id, FragmentShaderId: Id, ProgramId: Id, UniformId: Id + IdName, BufferId: Id, AttributeId: Id + IdName, TextureId: Id, FramebufferId: Id, TransformFeedbackId: Id, VertexArrayObjectId: Id, UserCtx: Clone> From<RenderCallbackJs> for RenderCallback<VertexShaderId, FragmentShaderId, ProgramId, UniformId, BufferId, AttributeId, TextureId, FramebufferId, TransformFeedbackId, VertexArrayObjectId, UserCtx>
Source§fn from(callback: RenderCallbackJs) -> Self
fn from(callback: RenderCallbackJs) -> Self
Converts to this type from the input type.
Source§impl<VertexShaderId: Hash + Id, FragmentShaderId: Hash + Id, ProgramId: Hash + Id, UniformId: Hash + Id + IdName, BufferId: Hash + Id, AttributeId: Hash + Id + IdName, TextureId: Hash + Id, FramebufferId: Hash + Id, TransformFeedbackId: Hash + Id, VertexArrayObjectId: Hash + Id, UserCtx: Hash + Clone + 'static> Hash for RenderCallback<VertexShaderId, FragmentShaderId, ProgramId, UniformId, BufferId, AttributeId, TextureId, FramebufferId, TransformFeedbackId, VertexArrayObjectId, UserCtx>
impl<VertexShaderId: Hash + Id, FragmentShaderId: Hash + Id, ProgramId: Hash + Id, UniformId: Hash + Id + IdName, BufferId: Hash + Id, AttributeId: Hash + Id + IdName, TextureId: Hash + Id, FramebufferId: Hash + Id, TransformFeedbackId: Hash + Id, VertexArrayObjectId: Hash + Id, UserCtx: Hash + Clone + 'static> Hash for RenderCallback<VertexShaderId, FragmentShaderId, ProgramId, UniformId, BufferId, AttributeId, TextureId, FramebufferId, TransformFeedbackId, VertexArrayObjectId, UserCtx>
Source§impl<VertexShaderId: Id, FragmentShaderId: Id, ProgramId: Id, UniformId: Id + IdName, BufferId: Id, AttributeId: Id + IdName, TextureId: Id, FramebufferId: Id, TransformFeedbackId: Id, VertexArrayObjectId: Id, UserCtx: Clone> PartialEq for RenderCallback<VertexShaderId, FragmentShaderId, ProgramId, UniformId, BufferId, AttributeId, TextureId, FramebufferId, TransformFeedbackId, VertexArrayObjectId, UserCtx>
impl<VertexShaderId: Id, FragmentShaderId: Id, ProgramId: Id, UniformId: Id + IdName, BufferId: Id, AttributeId: Id + IdName, TextureId: Id, FramebufferId: Id, TransformFeedbackId: Id, VertexArrayObjectId: Id, UserCtx: Clone> PartialEq for RenderCallback<VertexShaderId, FragmentShaderId, ProgramId, UniformId, BufferId, AttributeId, TextureId, FramebufferId, TransformFeedbackId, VertexArrayObjectId, UserCtx>
Source§impl<VertexShaderId: PartialOrd + Id, FragmentShaderId: PartialOrd + Id, ProgramId: PartialOrd + Id, UniformId: PartialOrd + Id + IdName, BufferId: PartialOrd + Id, AttributeId: PartialOrd + Id + IdName, TextureId: PartialOrd + Id, FramebufferId: PartialOrd + Id, TransformFeedbackId: PartialOrd + Id, VertexArrayObjectId: PartialOrd + Id, UserCtx: PartialOrd + Clone + 'static> PartialOrd for RenderCallback<VertexShaderId, FragmentShaderId, ProgramId, UniformId, BufferId, AttributeId, TextureId, FramebufferId, TransformFeedbackId, VertexArrayObjectId, UserCtx>
impl<VertexShaderId: PartialOrd + Id, FragmentShaderId: PartialOrd + Id, ProgramId: PartialOrd + Id, UniformId: PartialOrd + Id + IdName, BufferId: PartialOrd + Id, AttributeId: PartialOrd + Id + IdName, TextureId: PartialOrd + Id, FramebufferId: PartialOrd + Id, TransformFeedbackId: PartialOrd + Id, VertexArrayObjectId: PartialOrd + Id, UserCtx: PartialOrd + Clone + 'static> PartialOrd for RenderCallback<VertexShaderId, FragmentShaderId, ProgramId, UniformId, BufferId, AttributeId, TextureId, FramebufferId, TransformFeedbackId, VertexArrayObjectId, UserCtx>
Source§fn partial_cmp(
&self,
other: &RenderCallback<VertexShaderId, FragmentShaderId, ProgramId, UniformId, BufferId, AttributeId, TextureId, FramebufferId, TransformFeedbackId, VertexArrayObjectId, UserCtx>,
) -> Option<Ordering>
fn partial_cmp( &self, other: &RenderCallback<VertexShaderId, FragmentShaderId, ProgramId, UniformId, BufferId, AttributeId, TextureId, FramebufferId, TransformFeedbackId, VertexArrayObjectId, UserCtx>, ) -> Option<Ordering>
impl<VertexShaderId: Eq + Id, FragmentShaderId: Eq + Id, ProgramId: Eq + Id, UniformId: Eq + Id + IdName, BufferId: Eq + Id, AttributeId: Eq + Id + IdName, TextureId: Eq + Id, FramebufferId: Eq + Id, TransformFeedbackId: Eq + Id, VertexArrayObjectId: Eq + Id, UserCtx: Eq + Clone + 'static> Eq for RenderCallback<VertexShaderId, FragmentShaderId, ProgramId, UniformId, BufferId, AttributeId, TextureId, FramebufferId, TransformFeedbackId, VertexArrayObjectId, UserCtx>
Auto Trait Implementations§
impl<VertexShaderId, FragmentShaderId, ProgramId, UniformId, BufferId, AttributeId, TextureId, FramebufferId, TransformFeedbackId, VertexArrayObjectId, UserCtx> Freeze for RenderCallback<VertexShaderId, FragmentShaderId, ProgramId, UniformId, BufferId, AttributeId, TextureId, FramebufferId, TransformFeedbackId, VertexArrayObjectId, UserCtx>
impl<VertexShaderId = IdDefault, FragmentShaderId = IdDefault, ProgramId = IdDefault, UniformId = IdDefault, BufferId = IdDefault, AttributeId = IdDefault, TextureId = IdDefault, FramebufferId = IdDefault, TransformFeedbackId = IdDefault, VertexArrayObjectId = IdDefault, UserCtx = ()> !RefUnwindSafe for RenderCallback<VertexShaderId, FragmentShaderId, ProgramId, UniformId, BufferId, AttributeId, TextureId, FramebufferId, TransformFeedbackId, VertexArrayObjectId, UserCtx>
impl<VertexShaderId = IdDefault, FragmentShaderId = IdDefault, ProgramId = IdDefault, UniformId = IdDefault, BufferId = IdDefault, AttributeId = IdDefault, TextureId = IdDefault, FramebufferId = IdDefault, TransformFeedbackId = IdDefault, VertexArrayObjectId = IdDefault, UserCtx = ()> !Send for RenderCallback<VertexShaderId, FragmentShaderId, ProgramId, UniformId, BufferId, AttributeId, TextureId, FramebufferId, TransformFeedbackId, VertexArrayObjectId, UserCtx>
impl<VertexShaderId = IdDefault, FragmentShaderId = IdDefault, ProgramId = IdDefault, UniformId = IdDefault, BufferId = IdDefault, AttributeId = IdDefault, TextureId = IdDefault, FramebufferId = IdDefault, TransformFeedbackId = IdDefault, VertexArrayObjectId = IdDefault, UserCtx = ()> !Sync for RenderCallback<VertexShaderId, FragmentShaderId, ProgramId, UniformId, BufferId, AttributeId, TextureId, FramebufferId, TransformFeedbackId, VertexArrayObjectId, UserCtx>
impl<VertexShaderId, FragmentShaderId, ProgramId, UniformId, BufferId, AttributeId, TextureId, FramebufferId, TransformFeedbackId, VertexArrayObjectId, UserCtx> Unpin for RenderCallback<VertexShaderId, FragmentShaderId, ProgramId, UniformId, BufferId, AttributeId, TextureId, FramebufferId, TransformFeedbackId, VertexArrayObjectId, UserCtx>
impl<VertexShaderId = IdDefault, FragmentShaderId = IdDefault, ProgramId = IdDefault, UniformId = IdDefault, BufferId = IdDefault, AttributeId = IdDefault, TextureId = IdDefault, FramebufferId = IdDefault, TransformFeedbackId = IdDefault, VertexArrayObjectId = IdDefault, UserCtx = ()> !UnwindSafe for RenderCallback<VertexShaderId, FragmentShaderId, ProgramId, UniformId, BufferId, AttributeId, TextureId, FramebufferId, TransformFeedbackId, VertexArrayObjectId, UserCtx>
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