Documentation
¶
Overview ¶
Package define 利用泛型特性,简化插件代码编写。
- 支持定义插件与插件接口,按安装位置分类,共有通用插件、运行时插件、服务插件三种。
- 使用 GoLand 作为 IDE 时,需要更新至 2023.2 版本以上,否则可能会有误报错。
- 可以参考官方示例:https://git.golaxy.org/examples,学习如何使用。
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AddInDefinition ¶ added in v0.3.66
type AddInDefinition[ADDIN_IFACE, SETTING any] struct { Id uint64 // 插件Id Name string // 插件名称 Install generic.ActionVar1[extension.AddInProvider, SETTING] // 安装插件 Uninstall generic.Action1[extension.AddInProvider] // 卸载插件 Require generic.Func1[extension.AddInProvider, ADDIN_IFACE] // 依赖插件 Lookup generic.FuncPair1[extension.AddInProvider, ADDIN_IFACE, bool] // 查找插件 }
AddInDefinition 通用插件定义
type AddInInterfaceDefinition ¶ added in v0.3.66
type AddInInterfaceDefinition[ADDIN_IFACE any] struct { Id uint64 // 插件Id Name string // 插件名称 Require generic.Func1[extension.AddInProvider, ADDIN_IFACE] // 依赖插件 Lookup generic.FuncPair1[extension.AddInProvider, ADDIN_IFACE, bool] // 查找插件 }
AddInInterfaceDefinition 通用插件接口定义
func AddInInterface ¶ added in v0.3.66
func AddInInterface[ADDIN_IFACE any](name ...string) AddInInterfaceDefinition[ADDIN_IFACE]
AddInInterface 定义通用插件接口,支持安装至运行时上下文和服务上下文,通常用于为同类插件的不同实现提供统一的接口
type RuntimeAddInDefinition ¶ added in v0.3.66
type RuntimeAddInDefinition[ADDIN_IFACE, SETTING any] struct { Id uint64 // 插件Id Name string // 插件名称 Install generic.ActionVar1[extension.AddInProvider, SETTING] // 安装插件 Uninstall generic.Action1[extension.AddInProvider] // 卸载插件 Require generic.Func1[runtime.Context, ADDIN_IFACE] // 依赖插件 Lookup generic.FuncPair1[runtime.Context, ADDIN_IFACE, bool] // 查找插件 }
RuntimeAddInDefinition 运行时插件定义
func RuntimeAddIn ¶ added in v0.3.66
func RuntimeAddIn[ADDIN_IFACE, SETTING any](creator generic.FuncVar0[SETTING, ADDIN_IFACE], name ...string) RuntimeAddInDefinition[ADDIN_IFACE, SETTING]
RuntimeAddIn 定义运行时插件,支持安装至运行时上下文
type RuntimeAddInInterfaceDefinition ¶ added in v0.3.66
type RuntimeAddInInterfaceDefinition[ADDIN_IFACE any] struct { Id uint64 // 插件Id Name string // 插件名称 Require generic.Func1[runtime.Context, ADDIN_IFACE] // 依赖插件 Lookup generic.FuncPair1[runtime.Context, ADDIN_IFACE, bool] // 查找插件 }
RuntimeAddInInterfaceDefinition 运行时插件接口定义
func RuntimeAddInInterface ¶ added in v0.3.66
func RuntimeAddInInterface[ADDIN_IFACE any](name ...string) RuntimeAddInInterfaceDefinition[ADDIN_IFACE]
RuntimeAddInInterface 定义运行时插件接口,支持安装至运行时上下文,通常用于为同类插件的不同实现提供统一的接口
type ServiceAddInDefinition ¶ added in v0.3.66
type ServiceAddInDefinition[ADDIN_IFACE, SETTING any] struct { Id uint64 // 插件Id Name string // 插件名称 Install generic.ActionVar1[extension.AddInProvider, SETTING] // 安装插件 Uninstall generic.Action1[extension.AddInProvider] // 卸载插件 Require generic.Func1[service.Context, ADDIN_IFACE] // 依赖插件 Lookup generic.FuncPair1[service.Context, ADDIN_IFACE, bool] // 查找插件 }
ServiceAddInDefinition 服务插件定义
func ServiceAddIn ¶ added in v0.3.66
func ServiceAddIn[ADDIN_IFACE, SETTING any](creator generic.FuncVar0[SETTING, ADDIN_IFACE], name ...string) ServiceAddInDefinition[ADDIN_IFACE, SETTING]
ServiceAddIn 定义服务插件,支持安装至服务上下文
type ServiceAddInInterfaceDefinition ¶ added in v0.3.66
type ServiceAddInInterfaceDefinition[ADDIN_IFACE any] struct { Id uint64 // 插件Id Name string // 插件名称 Require generic.Func1[service.Context, ADDIN_IFACE] // 依赖插件 Lookup generic.FuncPair1[service.Context, ADDIN_IFACE, bool] // 查找插件 }
ServiceAddInInterfaceDefinition 服务插件接口定义
func ServiceAddInInterface ¶ added in v0.3.66
func ServiceAddInInterface[ADDIN_IFACE any](name ...string) ServiceAddInInterfaceDefinition[ADDIN_IFACE]
ServiceAddInInterface 定义服务插件接口,支持安装至服务上下文,通常用于为同类插件的不同实现提供统一的接口
Click to show internal directories.
Click to hide internal directories.