mirror of
				https://github.com/ruby/ruby.git
				synced 2022-11-09 12:17:21 -05:00 
			
		
		
		
	 365557f111
			
		
	
	
		365557f111
		
	
	
	
	
		
			
			IO#read/write_nonblock methods are defined in prelude.rb with special private method __read/write_nonblock to reduce keyword parameters overhead. We can move them into io.rb with builtin functions.
		
			
				
	
	
		
			37 lines
		
	
	
	
		
			806 B
		
	
	
	
		
			Ruby
		
	
	
	
	
	
			
		
		
	
	
			37 lines
		
	
	
	
		
			806 B
		
	
	
	
		
			Ruby
		
	
	
	
	
	
| class << Thread
 | |
|   # call-seq:
 | |
|   #    Thread.exclusive { block }   -> obj
 | |
|   #
 | |
|   # Wraps the block in a single, VM-global Mutex.synchronize, returning the
 | |
|   # value of the block. A thread executing inside the exclusive section will
 | |
|   # only block other threads which also use the Thread.exclusive mechanism.
 | |
|   def exclusive(&block) end if false
 | |
|   mutex = Mutex.new # :nodoc:
 | |
|   define_method(:exclusive) do |&block|
 | |
|     warn "Thread.exclusive is deprecated, use Thread::Mutex", uplevel: 1
 | |
|     mutex.synchronize(&block)
 | |
|   end
 | |
| end
 | |
| 
 | |
| class Binding
 | |
|   # :nodoc:
 | |
|   def irb
 | |
|     require 'irb'
 | |
|     irb
 | |
|   end
 | |
| 
 | |
|   # suppress redefinition warning
 | |
|   alias irb irb # :nodoc:
 | |
| end
 | |
| 
 | |
| module Kernel
 | |
|   def pp(*objs)
 | |
|     require 'pp'
 | |
|     pp(*objs)
 | |
|   end
 | |
| 
 | |
|   # suppress redefinition warning
 | |
|   alias pp pp # :nodoc:
 | |
| 
 | |
|   private :pp
 | |
| end
 |