Skip to content

Calling conventions

Ethan edited this page Feb 6, 2022 · 2 revisions

The following describes dart_eval's calling convention for different types of functions:

Top-level function

  • Statically resolved call: [arg1, arg2, arg3...]
  • Untracked tear-off: [[posTypes], [namedNames], [namedTypes], null, arg1, arg2, arg3...]

Instance method

  • Static or dynamic call: [this, arg1, arg2, arg3...]
  • Untracked tear-off: [[posTypes], [namedNames], [namedTypes], this, arg1, arg2, arg3...]

Closure

  • Call: [capturedScope, arg1, arg2, arg3...]
  • Untracked reference: [[posTypes], [namedNames], [namedTypes], scope, arg1, arg2, arg3...]
Clone this wiki locally