D7net
Home
Console
Upload
information
Create File
Create Folder
About
Tools
:
/
proc
/
self
/
root
/
opt
/
alt
/
ruby34
/
share
/
ri
/
system
/
Fiddle
/
Handle
/
Filename :
cdesc-Handle.ri
back
Copy
U:RDoc::NormalClass[iI"Handle:ETI"Fiddle::Handle;TI"Object;To:RDoc::Markup::Document:@parts[o;;[o:RDoc::Markup::Paragraph;[I"CThe Fiddle::Handle is the manner to access the dynamic library;To:RDoc::Markup::BlankLine S:RDoc::Markup::Heading: leveli: textI"Example;T@S;;i; I" Setup;T@o:RDoc::Markup::Verbatim;[ I""libc_so = "/lib64/libc.so.6" ;TI"=> "/lib64/libc.so.6" ;TI"+@handle = Fiddle::Handle.new(libc_so) ;TI"+=> #<Fiddle::Handle:0x00000000d69ef8> ;T:@format0S;;i; I"Setup, with flags;T@o;;[ I""libc_so = "/lib64/libc.so.6" ;TI"=> "/lib64/libc.so.6" ;TI"T@handle = Fiddle::Handle.new(libc_so, Fiddle::RTLD_LAZY | Fiddle::RTLD_GLOBAL) ;TI"+=> #<Fiddle::Handle:0x00000000d69ef8> ;T;0o; ;[I""See RTLD_LAZY and RTLD_GLOBAL;T@S;;i; I"Addresses to symbols;T@o;;[I"%strcpy_addr = @handle['strcpy'] ;TI"=> 140062278451968 ;T;0o; ;[I"or;T@o;;[I")strcpy_addr = @handle.sym('strcpy') ;TI"=> 140062278451968;T;0: @fileI"ext/fiddle/handle.c;T:0@omit_headings_from_table_of_contents_below0o;;[ ;I")ext/fiddle/lib/fiddle/ffi_backend.rb;T;0;0;0[ [ U:RDoc::Constant[i I" NEXT;TI"Fiddle::Handle::NEXT;T:public0o;;[ o; ;[I" NEXT;T@o; ;[I",A predefined pseudo-handle of RTLD_NEXT;T@o; ;[I"KWhich will find the next occurrence of a function in the search order ;TI"after the current library.;T;@4;0@4@cRDoc::NormalClass0U;[i I"DEFAULT;TI"Fiddle::Handle::DEFAULT;T;0o;;[ o; ;[I"DEFAULT;T@o; ;[I"/A predefined pseudo-handle of RTLD_DEFAULT;T@o; ;[I"JWhich will find the first occurrence of the desired symbol using the ;TI"!default library search order;T;@4;0@4@@J0U;[i I"RTLD_GLOBAL;TI" Fiddle::Handle::RTLD_GLOBAL;T;0o;;[ o; ;[I"RTLD_GLOBAL;T@o; ;[I"rtld Fiddle::Handle flag.;T@o; ;[I"KThe symbols defined by this library will be made available for symbol ;TI"1resolution of subsequently loaded libraries.;T;@4;0@4@@J0U;[i I"RTLD_LAZY;TI"Fiddle::Handle::RTLD_LAZY;T;0o;;[ o; ;[I"RTLD_LAZY;T@o; ;[I"rtld Fiddle::Handle flag.;T@o; ;[ I"MPerform lazy binding. Only resolve symbols as the code that references ;TI"Mthem is executed. If the symbol is never referenced, then it is never ;TI"Iresolved. (Lazy binding is only performed for function references; ;TI"Kreferences to variables are always immediately bound when the library ;TI"is loaded.);T;@4;0@4@@J0U;[i I" RTLD_NOW;TI"Fiddle::Handle::RTLD_NOW;T;0o;;[ o; ;[I" RTLD_NOW;T@o; ;[I"rtld Fiddle::Handle flag.;T@o; ;[ I"KIf this value is specified or the environment variable LD_BIND_NOW is ;TI"Hset to a nonempty string, all undefined symbols in the library are ;TI"Mresolved before Fiddle.dlopen returns. If this cannot be done an error ;TI"is returned.;T;@4;0@4@@J0[ [[I" class;T[[;[ [I"[];TI"ext/fiddle/handle.c;T[I"new;T@�[@�I")ext/fiddle/lib/fiddle/ffi_backend.rb;T[I"sym;T@�[I"sym_defined?;T@�[:protected[ [:private[ [I" instance;T[[;[[@�@�[I" close;T@�[I"close_enabled?;T@�[I"disable_close;T@�[I"enable_close;T@�[I"file_name;T@�[I"sym;T@�[I"sym_defined?;T@�[I" to_i;T@�[I"to_ptr;T@�[;[ [;[ [ [U:RDoc::Context::Section[i 0o;;[ ;0;0[I"ext/fiddle/closure.c;T@7I"Fiddle;TcRDoc::NormalModule