pub trait EvalContextExt<'mir, 'tcx: 'mir>: MiriInterpCxExt<'mir, 'tcx> {
// Provided methods
fn pthread_create(
&mut self,
thread: &OpTy<'tcx, Provenance>,
_attr: &OpTy<'tcx, Provenance>,
start_routine: &OpTy<'tcx, Provenance>,
arg: &OpTy<'tcx, Provenance>
) -> InterpResult<'tcx, i32> { ... }
fn pthread_join(
&mut self,
thread: &OpTy<'tcx, Provenance>,
retval: &OpTy<'tcx, Provenance>
) -> InterpResult<'tcx, i32> { ... }
fn pthread_detach(
&mut self,
thread: &OpTy<'tcx, Provenance>
) -> InterpResult<'tcx, i32> { ... }
fn pthread_self(&mut self) -> InterpResult<'tcx, Scalar<Provenance>> { ... }
fn pthread_setname_np(
&mut self,
thread: Scalar<Provenance>,
name: Scalar<Provenance>,
max_name_len: usize
) -> InterpResult<'tcx, Scalar<Provenance>> { ... }
fn pthread_getname_np(
&mut self,
thread: Scalar<Provenance>,
name_out: Scalar<Provenance>,
len: Scalar<Provenance>
) -> InterpResult<'tcx, Scalar<Provenance>> { ... }
fn sched_yield(&mut self) -> InterpResult<'tcx, i32> { ... }
}
Provided Methods§
fn pthread_create( &mut self, thread: &OpTy<'tcx, Provenance>, _attr: &OpTy<'tcx, Provenance>, start_routine: &OpTy<'tcx, Provenance>, arg: &OpTy<'tcx, Provenance> ) -> InterpResult<'tcx, i32>
fn pthread_join( &mut self, thread: &OpTy<'tcx, Provenance>, retval: &OpTy<'tcx, Provenance> ) -> InterpResult<'tcx, i32>
fn pthread_detach( &mut self, thread: &OpTy<'tcx, Provenance> ) -> InterpResult<'tcx, i32>
fn pthread_self(&mut self) -> InterpResult<'tcx, Scalar<Provenance>>
sourcefn pthread_setname_np(
&mut self,
thread: Scalar<Provenance>,
name: Scalar<Provenance>,
max_name_len: usize
) -> InterpResult<'tcx, Scalar<Provenance>>
fn pthread_setname_np( &mut self, thread: Scalar<Provenance>, name: Scalar<Provenance>, max_name_len: usize ) -> InterpResult<'tcx, Scalar<Provenance>>
Set the name of the current thread. max_name_len
is the maximal length of the name
including the null terminator.