在Dart中查找库中可见的所有声明

在Dart中查找库中可见的所有声明,dart,dart-mirrors,Dart,Dart Mirrors,我使用的是镜像,我试图找到库中所有可见的顶级函数 基本上,如果有人要导入该库,则可以调用所有顶级函数 所以我试了一下: final visibleMethods = currentMirrorSystem().isolate.rootLibrary.declarations.values .where((d) => !d.isPrivate && d.isTopLevel && d

我使用的是镜像,我试图找到库中所有可见的顶级函数

基本上,如果有人要导入该库,则可以调用所有顶级函数

所以我试了一下:

  final visibleMethods = currentMirrorSystem().isolate.rootLibrary.declarations.values
      .where((d) =>
          !d.isPrivate &&
          d.isTopLevel &&
          d is MethodMirror)
      .toList();
但这似乎不包括导出到库中的函数,例如,我有:

export'package:my_package/some_task.dart'show myOtherTask

导出到库中。但它不包括在我当前实现的
visibleMethods
列表中


有什么想法吗?

您不能导出到库中。只能从库中导出或导入到库中。您必须获取导入和导出语句,并递归地反映引用的库。您不能导出到库中。只能从库中导出或导入到库中。您必须获取导入和导出语句,并递归地反映引用的库。