U:RDoc::AnyMethod[iI"syscall:ETI"Kernel#syscall;TF:publico:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [I"ACalls the operating system function identified by _num_ and ;TI"Ereturns the result of the function or raises SystemCallError if ;TI"it failed.;To:RDoc::Markup::BlankLine o;
; [
I"FArguments for the function can follow _num_. They must be either ;TI"H+String+ objects or +Integer+ objects. A +String+ object is passed ;TI"Fas a pointer to the byte sequence. An +Integer+ object is passed ;TI"8as an integer whose bit size is same as a pointer. ;TI")Up to nine parameters may be passed.;T@o;
; [I"0The function identified by _num_ is system ;TI"Idependent. On some Unix systems, the numbers may be obtained from a ;TI"/header file called syscall.h
.;T@o:RDoc::Markup::Verbatim; [I"?syscall 4, 1, "hello\n", 6 # '4' is write(2) on our box
;T:@format0o;
; [I"produces:;T@o;; [I"hello
;T;
0o;
; [I"DCalling +syscall+ on a platform which does not have any way to ;TI"Fan arbitrary system function just fails with NotImplementedError.;T@o;
; [
I"
*Note:* ;TI"5+syscall+ is essentially unsafe and unportable. ;TI"#Feel free to shoot your foot. ;TI">The DL (Fiddle) library is preferred for safer and a bit ;TI"more portable programming.;T:
@fileI" io.c;T:0@omit_headings_from_table_of_contents_below0I"+syscall(num [, args...]) -> integer
;T0[ I"(*args);T@1FI"Kernel;TcRDoc::NormalModule00