hamigaki.png

前のページ 上に戻る ホーム 次のページ

Class file_status

hamigaki::filesystem::file_status —

ファイルの状態情報を保持する

Synopsis

class file_status {
public:
  // construct/copy/destruct
  explicit file_status(file_type = status_unknown);

  // queries
  file_type type() const;
  bool has_attributes() const;
  file_attributes::value_type attributes() const;
  bool has_permissions() const;
  file_permissions::value_type permissions() const;
  boost::uintmax_t file_size() const;
  timestamp last_write_time() const;
  timestamp last_access_time() const;
  bool has_last_change_time() const;
  timestamp last_change_time() const;
  bool has_creation_time() const;
  timestamp creation_time() const;
  bool has_uid() const;
  boost::intmax_t uid() const;
  bool has_gid() const;
  boost::intmax_t gid() const;

  // modifiers
  void type(file_type);
  void attributes(file_attributes::value_type);
  void permissions(file_permissions::value_type);
  void file_size(boost::uintmax_t);
  void last_write_time(const timestamp&);
  void last_access_time(const timestamp&);
  void last_change_time(const timestamp&);
  void creation_time(const timestamp&);
  void uid(boost::intmax_t);
  void gid(boost::intmax_t);
};

// predicate functions
bool status_known(const file_status&);
bool exists(const file_status&);
bool is_regular(const file_status&);
bool is_directory(const file_status&);
bool is_symlink(const file_status&);
bool is_other(const file_status&);

Description

file_status construct/copy/destruct

  1. explicit file_status(file_type v = status_unknown);
    Effects: this->type(v)

file_status queries

  1. file_type type() const;
    Returns: file_statusが保持しているファイルの種類
  2. bool has_attributes() const;
    Returns: file_statusがファイル属性を保持していればtrue。そうでなければfalse
  3. file_attributes::value_type attributes() const;
    Requires: has_attributes() == true
    Returns: file_statusが保持しているファイル属性
  4. bool has_permissions() const;
    Returns: file_statusがファイル許可属性を保持していればtrue。そうでなければfalse
  5. file_permissions::value_type permissions() const;
    Requires: has_permissions() == true
    Returns: file_statusが保持しているファイル許可属性
  6. boost::uintmax_t file_size() const;
    Returns: file_statusが保持しているファイルサイズ
  7. timestamp last_write_time() const;
    Returns: file_statusが保持しているファイル最終更新時間
  8. timestamp last_access_time() const;
    Returns: file_statusが保持しているファイル最終アクセス時間
  9. bool has_last_change_time() const;
    Returns: file_statusがファイル最終状態変更時間を保持していればtrue。そうでなければfalse
  10. timestamp last_change_time() const;
    Requires: has_last_change_time() == true
    Returns: file_statusが保持しているファイル最終状態変更時間
  11. bool has_creation_time() const;
    Returns: file_statusがファイル作成時間を保持していればtrue。そうでなければfalse
  12. timestamp creation_time() const;
    Requires: has_creation_time() == true
    Returns: file_statusが保持しているファイル作成時間
  13. bool has_uid() const;
    Returns: file_statusがユーザーIDを保持していればtrue。そうでなければfalse
  14. boost::intmax_t uid() const;
    Requires: has_uid() == true
    Returns: file_statusが保持しているユーザーID
  15. bool has_gid() const;
    Returns: file_statusがグループIDを保持していればtrue。そうでなければfalse
  16. boost::intmax_t gid() const;
    Requires: has_gid() == true
    Returns: file_statusが保持しているグループID

file_status modifiers

  1. void type(file_type v);
    Effects: file_statusが保持しているファイルの種類をvに変更する
  2. void attributes(file_attributes::value_type v);
    Effects: file_statusが保持しているファイル属性をvに変更する
  3. void permissions(file_permissions::value_type v);
    Effects: file_statusが保持しているファイル許可属性をvに変更する
  4. void file_size(boost::uintmax_t v);
    Effects: file_statusが保持しているファイルサイズをvに変更する
  5. void last_write_time(const timestamp& v);
    Effects: file_statusが保持しているファイル最終更新時間をvに変更する
  6. void last_access_time(const timestamp& v);
    Effects: file_statusが保持しているファイル最終アクセス時間をvに変更する
  7. void last_change_time(const timestamp& v);
    Effects: file_statusが保持しているファイル最終状態変更時間をvに変更する
  8. void creation_time(const timestamp& v);
    Effects: file_statusが保持しているファイル作成時間をvに変更する
  9. void uid(boost::intmax_t v);
    Effects: file_statusが保持しているユーザーIDをvに変更する
  10. void gid(boost::intmax_t v);
    Effects: file_statusが保持しているグループIDをvに変更する

file_status predicate functions

  1. bool status_known(const file_status& s);
    Returns: s.type() != status_unknown
  2. bool exists(const file_status& s);
    Returns: status_known(s) && s.type() != file_not_found
  3. bool is_regular(const file_status& s);
    Returns: s.type() == regular_file
  4. bool is_directory(const file_status& s);
    Returns: s.type() == directory_file
  5. bool is_symlink(const file_status& s);
    Returns: s.type() == symlink_file
  6. bool is_other(const file_status& s);
    Returns: exists(s) && !is_regular(s) && !is_directory(s) && !is_symlink(s)
製作著作 © 2006, 2007 Takeshi Mouri

前のページ 上に戻る ホーム 次のページ