File: C:/Ruby27-x64/share/ri/2.7.0/system/Mutex_m/cdesc-Mutex_m.ri
U:RDoc::NormalModule[iI"Mutex_m:ET@0o:RDoc::Markup::Document:@parts[o;;[S:RDoc::Markup::Heading:
leveli: textI"mutex_m.rb;To:RDoc::Markup::BlankLine o:RDoc::Markup::Paragraph;[I"RWhen 'mutex_m' is required, any object that extends or includes Mutex_m will ;TI"be treated like a Mutex.;T@o;
;[I"5Start by requiring the standard library Mutex_m:;T@o:RDoc::Markup::Verbatim;[I"require "mutex_m.rb"
;T:@format0o;
;[I"DFrom here you can extend an object with Mutex instance methods:;T@o;;[I"obj = Object.new
;TI"obj.extend Mutex_m
;T;0o;
;[I"LOr mixin Mutex_m into your module to your class inherit Mutex instance ;TI"Jmethods --- remember to call super() in your class initialize method.;T@o;;[I"class Foo
;TI" include Mutex_m
;TI" def initialize
;TI" # ...
;TI" super()
;TI" end
;TI"
# ...
;TI" end
;TI"obj = Foo.new
;TI")# this obj can be handled like Mutex;T;0:
@fileI"lib/mutex_m.rb;T:0@omit_headings_from_table_of_contents_below0;0;0[ [U:RDoc::Constant[i I"VERSION;TI"Mutex_m::VERSION;T:public0o;;[ ;@0;0@0@cRDoc::NormalModule0[ [[I"
class;T[[;[ [:protected[ [:private[ [I"
instance;T[[;[[I"mu_lock;TI"!../ruby-2.7.7/lib/mutex_m.rb;T[I"mu_locked?;T@L[I"mu_synchronize;T@L[I"mu_try_lock;T@L[I"mu_unlock;T@L[I"
sleep;T@L[;[ [;[ [ [U:RDoc::Context::Section[i 0o;;[ ;0;0[I"lib/mutex_m.rb;T@0cRDoc::TopLevel