The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

Name

SPVM::Sys::IO::Stat - The stat Functions and The struct stat in C language

Usage

  use Sys::IO::Stat;
  
  my $file = "foo.txt";
  my $stat =  Sys::IO::Stat->new;
  Sys::IO::Stat->stat($file, $stat);
  
  my $st_mode = $stat->st_mode;
  my $st_size = $stat->st_size;

Description

Sys::IO::Stat is the class for the struct stat in C language.

This is a pointer class.

Class Methods

new

  static method new : Sys::IO::Stat ();

Create a new Sys::IO::Stat object.

stat_raw

  static method stat_raw : int ($path : string, $stat : Sys::IO::Stat);

The same as "stat", but even if the return value is -1, an exception will not be thrown.

stat

  static method stat : int ($path : string, $stat : Sys::IO::Stat);

These functions return information about a file. No permissions are required on the file itself, but-in the case of stat() and lstat() - execute (search) permission is required on all of the directories in path that lead to the file.

stat() stats the file pointed to by path and fills in buf.

See the stat function in Linux.

The stat is Sys::IO::Stat object.

lstat_raw

  static method lstat_raw : int ($path : string, $stat : Sys::IO::Stat);

The same as "lstat", but even if the return value is -1, an exception will not be thrown.

lstat

  static method lstat : int ($path : string, $stat : Sys::IO::Stat);

These functions return information about a file. No permissions are required on the file itself, but-in the case of stat() and lstat() - execute (search) permission is required on all of the directories in path that lead to the file.

lstat() is identical to stat(), except that if path is a symbolic link, then the link itself is stat-ed, not the file that it refers to.

See the lstat function in Linux.

The stat is Sys::IO::Stat object.

fstat_raw

  static method fstat_raw : int ($fd : int, $stat : Sys::IO::Stat);

The same as "fstat", but even if the return value is -1, an exception will not be thrown.

fstat

  static method fstat : int ($fd : int, $stat : Sys::IO::Stat);

fstat() is identical to stat(), except that the file to be stat-ed is specified by the file descriptor fd.

See fstat(2) - Linux man page in Linux.

The $stat is a Sys::IO::Stat object.

Instance Methods

DESTROY

  method DESTROY : void ();

The destructor.

st_dev

  method st_dev : int ();

Gets st_dev.

st_ino

  method st_ino : int ();

Gets st_ino.

st_mode

  method st_mode : int ();

Gets st_mode.

  method st_nlink : int ();

Gets st_nlink.

st_uid

  method st_uid : int ();

Gets st_uid.

st_gid

  method st_gid : int ();

Gets st_gid.

st_rdev

  method st_rdev : int ();

Gets st_rdev.

st_size

  method st_size : long ();

Gets st_size.

st_blksize

  method st_blksize : long ();

Gets st_blksize.

st_blocks

  method st_blocks : long ();

Gets st_blocks.

st_mtime

  method st_mtime : long ();

Gets st_mtime.

st_atime

  method st_atime : long ();

Gets st_atime.

st_ctime

  method st_ctime : long ();

Gets st_ctime.

st_mtim_tv_nsec

  method st_mtim_tv_nsec : long ();

Gets st_mtim.tv_nsec.

st_atim_tv_nsec

  method st_atim_tv_nsec : long ();

Gets st_atim.tv_nsec.

st_ctim_tv_nsec

  method st_ctim_tv_nsec : long ();

Gets st_ctim.tv_nsec.

Copyright & License

Copyright 2022-2022 Yuki Kimoto, all rights reserved.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.