MailMimeParser 0.4

Stream

Namespaces

Helper

Interfaces, Classes and Traits

Base64DecodeStreamFilter
Unfortunately neither the built-in base64 decoder in PHP, nor the HHVM implementation for their ConvertFilter seem to handle large streams correctly. There appears to be no provision for data coming in when they're not split on 4 byte-chunks (each 4-byte chunk of base-64 encoded data translates to 3-bytes of unencoded data).
Base64EncodeStreamFilter
Unfortunately neither the built-in base64 encoder in PHP, nor the HHVM implementation for their ConvertFilter seem to handle large streams correctly. There appears to be no provision for data coming in when they're not split on 3 byte-chunks (each 3-byte chunk trnaslates to 4-bytes of base64 encoded data).
CharsetStreamFilter
Implements a filter converting the stream's character encoding while reading from it, so the charset of strings returned by read operations are guaranteed to be encoded to UTF-8.
ConvertStreamFilter
PartStream
Implementation of a stream wrapper representing content for a specific MIME part of an email message.
PartStreamRegistry
Factory class for PartStream objects and registration class for Message handles.
StreamLeftover
Unfortunately using a class object specifically to handle leftovers seems to be the only way. The last call to php_user_filter with $closing set to true doesn't seem to be 'writable' to $out, if the entire stream is in a single buffer. If, however, the stream is large enough to be buffered multiple times, the before last call seems to both contain data and have $closing set to true.
UUDecodeStreamFilter
Stream filter converts uuencoded text to its raw binary.
UUEncodeStreamFilter
Stream filter converts binary streams to uuencoded text.

Search results