arity property

  1. @override
int get arity
override

Implementation

@override
int get arity {
  if (isSetter) return 1; // Setters always take one argument
  // Original logic for required positional parameters
  final params = _parameters?.parameters;
  if (params == null) return 0;
  return params
      .where(
        (p) =>
            p is SSimpleFormalParameter ||
            p is SFieldFormalParameter ||
            p is SFunctionTypedFormalParameter ||
            p is SSuperFormalParameter,
      )
      .where((p) {
        if (p is SSimpleFormalParameter) {
          return p.isPositional && p.isRequired;
        }
        return true; // Other NormalFormalParameter-like types are required positional by default
      })
      .length;
}