14 lines
702 B
Go
14 lines
702 B
Go
package proto
|
|
|
|
// InstructionPayload 是 protoc 为 oneof 生成的未导出接口 isInstruction_Payload 的一个公开别名。
|
|
// 通过接口嵌入,我们创建了一个新的、可导出的接口,它拥有与 isInstruction_Payload 完全相同的方法集。
|
|
//
|
|
// 根据 Go 的接口规则,任何实现了 isInstruction_Payload 接口的类型 (例如 *Instruction_Ping)
|
|
// 都会自动、隐式地满足此接口。
|
|
//
|
|
// 这使得我们可以在项目的其他包(如 domain 层)的公开 API 中使用这个接口,
|
|
// 从而在保持类型安全的同时,避免了对 protoc 生成的未导出类型的直接依赖。
|
|
type InstructionPayload interface {
|
|
isInstruction_Payload
|
|
}
|