检测golang方法是否为内部方法?

检测golang方法是否为内部方法?,go,reflection,Go,Reflection,我正在编写一个函数,它迭代给定结构上的方法,并将这些方法绑定到处理程序。如果可能的话,我想跳过内部方法。我不确定是否可以明确地做到这一点-我查看了reflect包的文档,但没有看到检测给定值是否为内部方法的方法。我知道我可以得到这个方法的名称,然后检查它是否以小写字符开头,但我不确定是否有一种更合适的方法来实现这一点。也有可能内部/公共边界实际上只在编译时存在,因此除了方法的名称之外,根本没有办法知道这一点。不管是哪种情况,我都想确定。谢谢 reflect包不会通过Type.Method为您提供

我正在编写一个函数,它迭代给定结构上的方法,并将这些方法绑定到处理程序。如果可能的话,我想跳过内部方法。我不确定是否可以明确地做到这一点-我查看了reflect包的文档,但没有看到检测给定值是否为内部方法的方法。我知道我可以得到这个方法的名称,然后检查它是否以小写字符开头,但我不确定是否有一种更合适的方法来实现这一点。也有可能内部/公共边界实际上只在编译时存在,因此除了方法的名称之外,根本没有办法知道这一点。不管是哪种情况,我都想确定。谢谢

reflect包不会通过
Type.Method
为您提供未报告的方法。基本上,如果您可以通过reflect看到它,它已经被导出了


请参见

reflect包不会通过
Type.Method
为您提供未报告的方法。基本上,如果您可以通过reflect看到它,它已经被导出了


太棒了!我10分钟内不能接受你的回答,但我会在我能接受的时候接受。太棒了!我在10分钟内不能接受你的回答,但我会在可能的时候接受。仅供参考,正确的术语已导出/未导出。这没什么大不了的,但它在搜索时很有帮助。@captncraig谢谢,我相对来说是新手。我主要使用swift编写,它具有开放/公共/内部(默认)/文件私有/私有访问控制级别。仅供参考,正确的术语已导出/未报告。这没什么大不了的,但它在搜索时很有帮助。@captncraig谢谢,我相对来说是新手。我主要使用swift编写,它具有开放/公共/内部(默认)/文件私有/私有访问控制级别。