std::filesystem::is_fifo

std::filesystem::is_fifo (FIFO·파이프인지 확인)

주어진 파일 상태나 경로가 FIFO 또는 파이프 파일에 해당하는지 확인하는 함수예요. C++17부터 있어요.

출처: cppreference

본문

<filesystem> 헤더에 정의돼 있어요.

bool is_fifo( std::filesystem::file_status s ) noexcept;  // (1) C++17
bool is_fifo( const std::filesystem::path& p );           // (2) C++17
bool is_fifo( const std::filesystem::path& p, std::error_code& ec ) noexcept; // (3) C++17

주어진 파일 상태나 경로가 POSIX S_ISFIFO가 판정하는 것처럼 FIFO 또는 파이프 파일인지 검사해요.

    1. s.type() == file_type::fifo와 동등해요.
  • 2,3) 각각 is_fifo(status(p)) 또는 is_fifo(status(p, ec))와 동등해요.

매개변수

  • s — 확인할 file status
  • p — 조회할 경로
  • ec — 오류가 있을 때 수정할 오류 코드

반환값

p가 가리키는 파일 또는 s가 나타내는 유형이 FIFO 파이프면 true, 아니면 false예요. 예외 없는 버전은 오류 시 false를 돌려줘요.

예외

noexcept로 표시되지 않은 오버로드는 메모리 할당이 실패하면 std::bad_alloc을 던질 수 있어요.

  • 2,3) OS API 호출이 실패하면 ec에 OS 오류 코드를 설정하고, 오류가 없다면 ec.clear()를 실행해요.

더 알아보기 (Learn more)

cppreference