pub trait EvalContextExt<'mir, 'tcx: 'mir>: MiriInterpCxExt<'mir, 'tcx> {
Show 15 methods // Provided methods fn getenv( &mut self, name_op: &OpTy<'tcx, Provenance> ) -> InterpResult<'tcx, Pointer<Option<Provenance>>> { ... } fn GetEnvironmentVariableW( &mut self, name_op: &OpTy<'tcx, Provenance>, buf_op: &OpTy<'tcx, Provenance>, size_op: &OpTy<'tcx, Provenance> ) -> InterpResult<'tcx, Scalar<Provenance>> { ... } fn GetEnvironmentStringsW( &mut self ) -> InterpResult<'tcx, Pointer<Option<Provenance>>> { ... } fn FreeEnvironmentStringsW( &mut self, env_block_op: &OpTy<'tcx, Provenance> ) -> InterpResult<'tcx, Scalar<Provenance>> { ... } fn setenv( &mut self, name_op: &OpTy<'tcx, Provenance>, value_op: &OpTy<'tcx, Provenance> ) -> InterpResult<'tcx, i32> { ... } fn SetEnvironmentVariableW( &mut self, name_op: &OpTy<'tcx, Provenance>, value_op: &OpTy<'tcx, Provenance> ) -> InterpResult<'tcx, Scalar<Provenance>> { ... } fn unsetenv( &mut self, name_op: &OpTy<'tcx, Provenance> ) -> InterpResult<'tcx, i32> { ... } fn getcwd( &mut self, buf_op: &OpTy<'tcx, Provenance>, size_op: &OpTy<'tcx, Provenance> ) -> InterpResult<'tcx, Pointer<Option<Provenance>>> { ... } fn GetCurrentDirectoryW( &mut self, size_op: &OpTy<'tcx, Provenance>, buf_op: &OpTy<'tcx, Provenance> ) -> InterpResult<'tcx, Scalar<Provenance>> { ... } fn chdir( &mut self, path_op: &OpTy<'tcx, Provenance> ) -> InterpResult<'tcx, i32> { ... } fn SetCurrentDirectoryW( &mut self, path_op: &OpTy<'tcx, Provenance> ) -> InterpResult<'tcx, Scalar<Provenance>> { ... } fn update_environ(&mut self) -> InterpResult<'tcx> { ... } fn read_environ(&self) -> InterpResult<'tcx> { ... } fn getpid(&mut self) -> InterpResult<'tcx, i32> { ... } fn GetCurrentProcessId(&mut self) -> InterpResult<'tcx, u32> { ... }
}

Provided Methods§

source

fn getenv( &mut self, name_op: &OpTy<'tcx, Provenance> ) -> InterpResult<'tcx, Pointer<Option<Provenance>>>

source

fn GetEnvironmentVariableW( &mut self, name_op: &OpTy<'tcx, Provenance>, buf_op: &OpTy<'tcx, Provenance>, size_op: &OpTy<'tcx, Provenance> ) -> InterpResult<'tcx, Scalar<Provenance>>

source

fn GetEnvironmentStringsW( &mut self ) -> InterpResult<'tcx, Pointer<Option<Provenance>>>

source

fn FreeEnvironmentStringsW( &mut self, env_block_op: &OpTy<'tcx, Provenance> ) -> InterpResult<'tcx, Scalar<Provenance>>

source

fn setenv( &mut self, name_op: &OpTy<'tcx, Provenance>, value_op: &OpTy<'tcx, Provenance> ) -> InterpResult<'tcx, i32>

source

fn SetEnvironmentVariableW( &mut self, name_op: &OpTy<'tcx, Provenance>, value_op: &OpTy<'tcx, Provenance> ) -> InterpResult<'tcx, Scalar<Provenance>>

source

fn unsetenv( &mut self, name_op: &OpTy<'tcx, Provenance> ) -> InterpResult<'tcx, i32>

source

fn getcwd( &mut self, buf_op: &OpTy<'tcx, Provenance>, size_op: &OpTy<'tcx, Provenance> ) -> InterpResult<'tcx, Pointer<Option<Provenance>>>

source

fn GetCurrentDirectoryW( &mut self, size_op: &OpTy<'tcx, Provenance>, buf_op: &OpTy<'tcx, Provenance> ) -> InterpResult<'tcx, Scalar<Provenance>>

source

fn chdir(&mut self, path_op: &OpTy<'tcx, Provenance>) -> InterpResult<'tcx, i32>

source

fn SetCurrentDirectoryW( &mut self, path_op: &OpTy<'tcx, Provenance> ) -> InterpResult<'tcx, Scalar<Provenance>>

source

fn update_environ(&mut self) -> InterpResult<'tcx>

Updates the environ static. The first time it gets called, also initializes extra.environ.

source

fn read_environ(&self) -> InterpResult<'tcx>

Reads from the environ static. We don’t actually care about the result, but we care about this potentially causing a data race.

source

fn getpid(&mut self) -> InterpResult<'tcx, i32>

source

fn GetCurrentProcessId(&mut self) -> InterpResult<'tcx, u32>

Implementors§

source§

impl<'mir, 'tcx: 'mir> EvalContextExt<'mir, 'tcx> for MiriInterpCx<'mir, 'tcx>