emitArguments method
Iterable<Transform>
emitArguments(
- StringBuffer buffer, {
- required InspectionCache cache,
- InstantiatedInspectEntry? parentEntry,
Emits the arguments of this function for Dart source generation.
Implementation
Iterable<Transform> emitArguments(
StringBuffer buffer, {
required InspectionCache cache,
InstantiatedInspectEntry? parentEntry,
}) {
final List<Transform> transforms = <Transform>[];
for (final Parameter parameter
in _parametersOfKind(ParameterKind.positional_only)) {
final (String typeString, Transform transform) =
_getTypeStringWithTransform(
parameter,
cache: cache,
parentEntry: parentEntry,
);
buffer.writeln("$typeString ${parameter.sanitizedName},");
transforms.add(transform);
}
if (_hasKeywordParameters()) {
buffer.write("{");
for (final Parameter parameter
in _parametersOfKind(ParameterKind.var_positional)) {
buffer.writeln(
"List<Object?> ${parameter.sanitizedName} ${parameter.defaultString},",
);
}
for (final Parameter parameter
in _parametersOfKind(ParameterKind.positional_or_keyword)) {
final (String typeString, Transform transform) =
_getTypeStringWithTransform(
parameter,
cache: cache,
parentEntry: parentEntry,
);
buffer.writeln(
"${parameter.requiredString} $typeString ${parameter.sanitizedName} ${parameter.defaultString},",
);
transforms.add(transform);
}
for (final Parameter parameter
in _parametersOfKind(ParameterKind.keyword_only)) {
final (String typeString, Transform transform) =
_getTypeStringWithTransform(
parameter,
cache: cache,
parentEntry: parentEntry,
);
buffer.writeln(
"${parameter.requiredString} $typeString ${parameter.sanitizedName} ${parameter.defaultString},",
);
transforms.add(transform);
}
for (final Parameter parameter
in _parametersOfKind(ParameterKind.var_keyword)) {
buffer.writeln(
"Map<String, Object?> ${parameter.sanitizedName} ${parameter.defaultString},",
);
}
buffer.write("}");
}
return transforms;
}