unit Myc.Ast.DataStream; interface uses Myc.Data.Pipeline, Myc.Data.Scalar; type // 1. IStreamProducer (Source) // Provides data. Corresponds to IProducer. IStreamProducer = IProducer; // 2. IStreamConsumer (Sink) // Consumes data. Corresponds to IConsumer. IStreamConsumer = IConsumer; // 3. IStreamConverter (Transform/Pipe) // Consumes AND provides data. // IMPORTANT: Inherits from IProducer, allowing safe hard-casts to IStreamProducer. IStreamConverter = IConverter; implementation end.