# formatted method

String formatted([

1. Object? arg1,
2. Object? arg2,
3. Object? arg3,
4. Object? arg4,
5. Object? arg5,
6. Object? arg6,
7. Object? arg7,
8. Object? arg8,

])

Formats the string with the given arguments.

Supports `%s`, `%d`, `%f`, and `%n` placeholders using either:

- Positional arguments (e.g. `formatted("Alice", 42)`)
- A single list of arguments (e.g. `formatted(["Alice", 42])`)

Example:

    'Hello, %s. You have %d new messages.%n'.formatted('Alice', 5);

Outputs:

    Hello, Alice. You have 5 new messages.

Supports usage like:

    '%s %d %f %n'.formatted('hi', 2, 3.14);
    '%s %s'.formatted(['a', 'b']);

## Implementation

    String formatted([Object? arg1, Object? arg2, Object? arg3, Object? arg4, Object? arg5, Object? arg6, Object? arg7, Object? arg8]) {
      final args = _normalizeArgs([arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8]);
      final parts = split(RegExp(r'(%[sdfn])'));
      final buffer = StringBuffer();
      var argIndex = 0;

      for (var part in parts) {
        if (_isPlaceholder(part)) {
          if (argIndex < args.length) {
            buffer.write(_formatPlaceholder(part, args[argIndex]));
            argIndex++;
          } else {
            buffer.write(part); // Leave placeholder as-is
          }
        } else {
          buffer.write(part);
        }
      }

      return buffer.toString();
    }