@@ -240,25 +240,25 @@ impl FdTable {
240240 }
241241 pub ( crate ) fn init ( mute_stdout_stderr : bool ) -> FdTable {
242242 let mut fds = FdTable :: new ( ) ;
243- fds. insert_fd ( io:: stdin ( ) ) ;
243+ fds. insert_new ( io:: stdin ( ) ) ;
244244 if mute_stdout_stderr {
245- assert_eq ! ( fds. insert_fd ( NullOutput ) , 1 ) ;
246- assert_eq ! ( fds. insert_fd ( NullOutput ) , 2 ) ;
245+ assert_eq ! ( fds. insert_new ( NullOutput ) , 1 ) ;
246+ assert_eq ! ( fds. insert_new ( NullOutput ) , 2 ) ;
247247 } else {
248- assert_eq ! ( fds. insert_fd ( io:: stdout( ) ) , 1 ) ;
249- assert_eq ! ( fds. insert_fd ( io:: stderr( ) ) , 2 ) ;
248+ assert_eq ! ( fds. insert_new ( io:: stdout( ) ) , 1 ) ;
249+ assert_eq ! ( fds. insert_new ( io:: stderr( ) ) , 2 ) ;
250250 }
251251 fds
252252 }
253253
254254 /// Insert a new file description to the FdTable.
255- pub fn insert_fd ( & mut self , fd : impl FileDescription ) -> i32 {
255+ pub fn insert_new ( & mut self , fd : impl FileDescription ) -> i32 {
256256 let file_handle = FileDescriptionRef :: new ( fd) ;
257- self . insert_fd_with_min_fd ( file_handle, 0 )
257+ self . insert_ref_with_min_fd ( file_handle, 0 )
258258 }
259259
260- /// Insert a new FD that is at least `min_fd`.
261- fn insert_fd_with_min_fd ( & mut self , file_handle : FileDescriptionRef , min_fd : i32 ) -> i32 {
260+ /// Insert a file description, giving it a file descriptor that is at least `min_fd`.
261+ fn insert_ref_with_min_fd ( & mut self , file_handle : FileDescriptionRef , min_fd : i32 ) -> i32 {
262262 // Find the lowest unused FD, starting from min_fd. If the first such unused FD is in
263263 // between used FDs, the find_map combinator will return it. If the first such unused FD
264264 // is after all other used FDs, the find_map combinator will return None, and we will use
@@ -294,7 +294,7 @@ impl FdTable {
294294 Some ( fd. borrow_mut ( ) )
295295 }
296296
297- pub fn dup ( & self , fd : i32 ) -> Option < FileDescriptionRef > {
297+ pub fn get_ref ( & self , fd : i32 ) -> Option < FileDescriptionRef > {
298298 let fd = self . fds . get ( & fd) ?;
299299 Some ( fd. clone ( ) )
300300 }
@@ -313,16 +313,16 @@ pub trait EvalContextExt<'tcx>: crate::MiriInterpCxExt<'tcx> {
313313 fn dup ( & mut self , old_fd : i32 ) -> InterpResult < ' tcx , Scalar > {
314314 let this = self . eval_context_mut ( ) ;
315315
316- let Some ( dup_fd) = this. machine . fds . dup ( old_fd) else {
316+ let Some ( dup_fd) = this. machine . fds . get_ref ( old_fd) else {
317317 return Ok ( Scalar :: from_i32 ( this. fd_not_found ( ) ?) ) ;
318318 } ;
319- Ok ( Scalar :: from_i32 ( this. machine . fds . insert_fd_with_min_fd ( dup_fd, 0 ) ) )
319+ Ok ( Scalar :: from_i32 ( this. machine . fds . insert_ref_with_min_fd ( dup_fd, 0 ) ) )
320320 }
321321
322322 fn dup2 ( & mut self , old_fd : i32 , new_fd : i32 ) -> InterpResult < ' tcx , Scalar > {
323323 let this = self . eval_context_mut ( ) ;
324324
325- let Some ( dup_fd) = this. machine . fds . dup ( old_fd) else {
325+ let Some ( dup_fd) = this. machine . fds . get_ref ( old_fd) else {
326326 return Ok ( Scalar :: from_i32 ( this. fd_not_found ( ) ?) ) ;
327327 } ;
328328 if new_fd != old_fd {
@@ -408,9 +408,9 @@ pub trait EvalContextExt<'tcx>: crate::MiriInterpCxExt<'tcx> {
408408 }
409409 let start = this. read_scalar ( & args[ 2 ] ) ?. to_i32 ( ) ?;
410410
411- match this. machine . fds . dup ( fd) {
411+ match this. machine . fds . get_ref ( fd) {
412412 Some ( dup_fd) =>
413- Ok ( Scalar :: from_i32 ( this. machine . fds . insert_fd_with_min_fd ( dup_fd, start) ) ) ,
413+ Ok ( Scalar :: from_i32 ( this. machine . fds . insert_ref_with_min_fd ( dup_fd, start) ) ) ,
414414 None => Ok ( Scalar :: from_i32 ( this. fd_not_found ( ) ?) ) ,
415415 }
416416 } else if this. tcx . sess . target . os == "macos" && cmd == this. eval_libc_i32 ( "F_FULLFSYNC" ) {
@@ -481,7 +481,7 @@ pub trait EvalContextExt<'tcx>: crate::MiriInterpCxExt<'tcx> {
481481 let communicate = this. machine . communicate ( ) ;
482482
483483 // We temporarily dup the FD to be able to retain mutable access to `this`.
484- let Some ( fd) = this. machine . fds . dup ( fd) else {
484+ let Some ( fd) = this. machine . fds . get_ref ( fd) else {
485485 trace ! ( "read: FD not found" ) ;
486486 return Ok ( Scalar :: from_target_isize ( this. fd_not_found ( ) ?, this) ) ;
487487 } ;
@@ -546,7 +546,7 @@ pub trait EvalContextExt<'tcx>: crate::MiriInterpCxExt<'tcx> {
546546
547547 let bytes = this. read_bytes_ptr_strip_provenance ( buf, Size :: from_bytes ( count) ) ?. to_owned ( ) ;
548548 // We temporarily dup the FD to be able to retain mutable access to `this`.
549- let Some ( fd) = this. machine . fds . dup ( fd) else {
549+ let Some ( fd) = this. machine . fds . get_ref ( fd) else {
550550 return Ok ( Scalar :: from_target_isize ( this. fd_not_found ( ) ?, this) ) ;
551551 } ;
552552
0 commit comments