using System; using System.Collections.Generic; using System.IO; namespace Apewer { // /// 封装一个方法,该方法不具有参数且不返回值。 // public delegate void Action(); // /// 表示当事件提供数据时将处理该事件的方法。 // /// 事件生成的事件数据的类型。 // /// 事件源。 // /// 包含事件数据的对象。 // public delegate void EventHandler(object sender, TEventArgs e); // /// 封装一个方法,该方法具有一个参数,且返回由 TResult 参数指定的类型的值。 // /// 此委托封装的方法的参数类型。 // /// 此委托封装的方法的返回值类型。 // /// 此委托封装的方法的参数。 // /// 此委托封装的方法的返回值。 // public delegate TResult Func(T arg); /// public delegate void Event(object sender, object argument); /// public delegate void Event(object sender, T argument); /// 数组回调。 public delegate T ArrayCallback(object sender, params T[] arguments); /// 可枚举回调。 public delegate T EnumerableCallback(object sender, IEnumerable arguments); /// 列表回调。 public delegate T ListCallback(object sender, List arguments); ///// //public delegate void EventHandler(object sender, T values) where T : Exception; /// 为 ZIP 提取文件提供输出流。参数 Size 为未压缩的大小。 public delegate Stream ZipOnFile(string name, long size, DateTime modified); /// 处理 ZIP 提取的目录。 public delegate void ZipOnDirectory(string name, DateTime modified); #if NET20 /// 封装一个方法,该方法不具有参数,且返回由 TResult 参数指定的类型的值。 /// 此委托封装的方法的返回值类型。 /// 此委托封装的方法的返回值。 public delegate TResult Func(); /// 封装一个方法,该方法具有一个参数,且返回由 TResult 参数指定的类型的值。 /// 此委托封装的方法的参数类型。 /// 此委托封装的方法的返回值类型。 /// 此委托封装的方法的参数。 /// 此委托封装的方法的返回值。 public delegate TResult Func(T arg); /// 封装一个方法,该方法不具有参数且不返回值。 public delegate void Action(); /// 表示当事件提供数据时将处理该事件的方法。 /// 事件生成的事件数据的类型。 /// 事件源。 /// 包含事件数据的对象。 public delegate void EventHandler(object sender, TEventArgs e); #endif }