コード例 #1
0
 /// <summary>
 /// 创建事件监听器
 /// </summary>
 /// <param name="execution">事件执行器</param>
 /// <param name="isWildcard">是否是通配符方法</param>
 /// <returns>事件监听器</returns>
 protected virtual Func <string, object[], object> MakeListener(Func <string, object[], object> execution, bool isWildcard = false)
 {
     return((eventName, payloads) => execution(eventName, isWildcard
         ? Arr.Merge(new object[] { eventName }, payloads)
         : payloads));
 }
コード例 #2
0
 /// <summary>
 /// 创建事件监听器
 /// </summary>
 /// <param name="target">调用目标</param>
 /// <param name="method">调用方法</param>
 /// <param name="isWildcard">是否是通配符方法</param>
 /// <returns>事件监听器</returns>
 protected virtual Func <string, object[], object> MakeListener(object target, MethodInfo method, bool isWildcard = false)
 {
     return((eventName, payloads) => Container.Call(target, method, isWildcard
         ? Arr.Merge(new object[] { eventName }, payloads)
         : payloads));
 }
コード例 #3
0
ファイル: Framework.cs プロジェクト: SixGodZhang/CatLib
 /// <summary>
 /// 获取引导程序
 /// </summary>
 /// <returns>引导脚本</returns>
 protected virtual IBootstrap[] GetBootstraps()
 {
     return(Arr.Reverse(Arr.Merge(GetComponents <IBootstrap>(), Bootstraps.Bootstrap)));
 }
コード例 #4
0
 /// <summary>
 /// 构建一个服务提供者引导程序
 /// </summary>
 /// <param name="component">Unity根组件</param>
 /// <param name="serviceProviders">服务提供者列表</param>
 public BootstrapProviderRegister(Component component, IServiceProvider[] serviceProviders = null)
 {
     providers      = Arr.Merge(Providers.ServiceProviders, serviceProviders);
     this.component = component;
 }
コード例 #5
0
 /// <summary>
 /// 获取引导程序
 /// </summary>
 /// <returns>引导脚本</returns>
 protected virtual IBootstrap[] GetBootstraps()
 {
     return(Arr.Merge(GetComponents <IBootstrap>(), Bootstraps.GetBoostraps(this)));
 }
コード例 #6
0
 /// <summary>
 /// 获取引导程序
 /// </summary>
 /// <returns>引导脚本</returns>
 private IBootstrap[] GetBootstraps()
 {
     return(Arr.Merge(component.GetComponents <IBootstrap>(), global::CatLib.Bootstrap.Bootstraps));
 }