NAME
    Win32::Pipe::PP - Pure Perl replacement for Win32::Pipe using Win32::API

OVERVIEW
    This module provides a pure Perl implementation of Win32::Pipe, using
    Win32::API to bind directly to native Windows system calls. It is
    designed as a drop-in replacement for the original XS-based module, with
    API compatibility and improved maintainability.

GOALS
    *   Eliminate XS dependency for easier installation and portability

    *   Provide full API compatibility with Win32::Pipe

    *   Support Win32::IPC integration via "get_Win32_IPC_HANDLE"

    *   Enable modular testing and extensibility

DIFFERENCES
    *   No XS or compiled components - implemented entirely in Perl

    *   Message mode and advanced flags are simplified or stubbed

    *   Support Windows waitable function in new method "wait"

IMPROVEMENTS
    *   "Read()" handles "ERROR_MORE_DATA" correctly and returns complete
        data

    *   Consistent error reporting via "Error()"

    *   IPC compatibility via "get_Win32_IPC_HANDLE"

PROJECT STRUCTURE
    This distribution follows CPAN best practices for layout and packaging:

      Win32-Pipe-PP/
      !
      +-- LICENSE                  # MIT license text
      +-- Makefile.PL              # Build script using ExtUtils::MakeMaker
      +-- Changes                  # Version history and release notes
      +-- MANIFEST.SKIP            # Patterns to exclude from MANIFEST
      +-- MANIFEST                 # List of files included in the CPAN distribution
      +-- .gitignore               # Git exclusion rules for build artifacts, etc.
      +-- README                   # Project overview, goals, differences
      +-- lib/
      !   '-- Win32/
      !       '-- Pipe/
      !           '-- PP.pm        # Main module with full POD
      +-- t/                       # Public test suite (runs via "make test")
      !   +-- 01_load.t            # Constructor usage
      !   +-- 02_api_compat.t      # API compatibility with XS version
      !   +-- 03_behavior.t        # Expected behavior under normal conditions
      !   +-- 04_error_codes.t     # Error handling and return values
      !   +-- 05_read_write.t      # Client server test
      !   +-- 06_ipc_support.t     # Compatibility with Win32::IPC::wait_any
      !   +-- 07_non-blocking.t    # Non Blocking test
      !   +-- 08_threads.t         # Compatibility with threads
      +-- .github/
      !   '-- workflows/
      !       '-- ci.yml           # GitHub Actions workflow for automated testing

AUTHOR
    J. Schneider <brickpool@cpan.org>

LICENSE
    MIT License - see LICENSE file for full text. However, this library
    distributes and references code from other open source projects that
    have their own licenses.

CREDITS
    Special thanks go to David Roth for creating Win32::Pipe

