eval<T> static method

T eval<T>({
  1. required String sourceCode,
  2. required String methodName,
  3. List? positionalArguments,
  4. Map<Symbol, dynamic>? namedArguments,
})

简洁的执行sourceCode源代码中的methodName函数

Implementation

static T eval<T>({required String sourceCode, required String methodName, List<dynamic>? positionalArguments, Map<Symbol, dynamic>? namedArguments}) {
  final runner = VmRunner(sourceTrees: {'default': VmParser.parseSource(sourceCode)});
  final result = runner.callFunction(methodName, positionalArguments: positionalArguments, namedArguments: namedArguments);
  runner.shutdown();
  return result;
}