![]() |
hamigaki::filesystem::file_status —
ファイルの状態情報を保持する
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&);
file_status
construct/copy/destructexplicit file_status(file_type v = status_unknown);
Effects: |
this->type(v)
|
file_status
queriesfile_type type() const;
Returns: | file_status が保持しているファイルの種類 |
bool has_attributes() const;
Returns: | file_status がファイル属性を保持していればtrue 。そうでなければfalse 。 |
file_attributes::value_type attributes() const;
Requires: |
has_attributes() == true
|
Returns: | file_status が保持しているファイル属性 |
bool has_permissions() const;
Returns: | file_status がファイル許可属性を保持していればtrue 。そうでなければfalse 。 |
file_permissions::value_type permissions() const;
Requires: |
has_permissions() == true
|
Returns: | file_status が保持しているファイル許可属性 |
boost::uintmax_t file_size() const;
Returns: | file_status が保持しているファイルサイズ |
timestamp last_write_time() const;
Returns: | file_status が保持しているファイル最終更新時間 |
timestamp last_access_time() const;
Returns: | file_status が保持しているファイル最終アクセス時間 |
bool has_last_change_time() const;
Returns: | file_status がファイル最終状態変更時間を保持していればtrue 。そうでなければfalse 。 |
timestamp last_change_time() const;
Requires: |
has_last_change_time() == true
|
Returns: | file_status が保持しているファイル最終状態変更時間 |
bool has_creation_time() const;
Returns: | file_status がファイル作成時間を保持していればtrue 。そうでなければfalse 。 |
timestamp creation_time() const;
Requires: |
has_creation_time() == true
|
Returns: | file_status が保持しているファイル作成時間 |
bool has_uid() const;
Returns: | file_status がユーザーIDを保持していればtrue 。そうでなければfalse 。 |
boost::intmax_t uid() const;
Requires: |
has_uid() == true
|
Returns: | file_status が保持しているユーザーID |
bool has_gid() const;
Returns: | file_status がグループIDを保持していればtrue 。そうでなければfalse 。 |
boost::intmax_t gid() const;
Requires: |
has_gid() == true
|
Returns: | file_status が保持しているグループID |
file_status
modifiersvoid type(file_type v);
Effects: | file_status が保持しているファイルの種類をv に変更する |
void attributes(file_attributes::value_type v);
Effects: | file_status が保持しているファイル属性をv に変更する |
void permissions(file_permissions::value_type v);
Effects: | file_status が保持しているファイル許可属性をv に変更する |
void file_size(boost::uintmax_t v);
Effects: | file_status が保持しているファイルサイズをv に変更する |
void last_write_time(const timestamp& v);
Effects: | file_status が保持しているファイル最終更新時間をv に変更する |
void last_access_time(const timestamp& v);
Effects: | file_status が保持しているファイル最終アクセス時間をv に変更する |
void last_change_time(const timestamp& v);
Effects: | file_status が保持しているファイル最終状態変更時間をv に変更する |
void creation_time(const timestamp& v);
Effects: | file_status が保持しているファイル作成時間をv に変更する |
void uid(boost::intmax_t v);
Effects: | file_status が保持しているユーザーIDをv に変更する |
void gid(boost::intmax_t v);
Effects: | file_status が保持しているグループIDをv に変更する |
file_status
predicate functionsbool status_known(const file_status& s);
Returns: |
s.type() != status_unknown
|
bool exists(const file_status& s);
Returns: |
status_known(s) && s.type() != file_not_found
|
bool is_regular(const file_status& s);
Returns: |
s.type() == regular_file
|
bool is_directory(const file_status& s);
Returns: |
s.type() == directory_file
|
bool is_symlink(const file_status& s);
Returns: |
s.type() == symlink_file
|
bool is_other(const file_status& s);
Returns: |
exists(s) && !is_regular(s) && !is_directory(s) && !is_symlink(s)
|
製作著作 © 2006, 2007 Takeshi Mouri |