ios.lineno → integer
Returns the current line number in ios. The stream must be opened for reading. lineno counts the number of times gets is called, rather than the number of newlines encountered. The two values will differ if gets is called with a separator other than newline. See also the $. variable.
f = File.new("testfile") f.lineno #=> 0 f.gets #=> "This is line one\n" f.lineno #=> 1 f.gets #=> "This is line two\n" f.lineno #=> 2
Source Code
/* * call-seq: * ios.lineno => integer * * Returns the current line number in <em>ios</em>. The stream must be * opened for reading. <code>lineno</code> counts the number of times * <code>gets</code> is called, rather than the number of newlines * encountered. The two values will differ if <code>gets</code> is * called with a separator other than newline. See also the * <code>$.</code> variable. * * f = File.new("testfile") * f.lineno #=> 0 * f.gets #=> "This is line one\n" * f.lineno #=> 1 * f.gets #=> "This is line two\n" * f.lineno #=> 2 */ static VALUE rb_io_lineno(io) VALUE io; { OpenFile *fptr; GetOpenFile(io, fptr); rb_io_check_readable(fptr); return INT2NUM(fptr->lineno); }
<code/>and<pre/>for code samples.