Skip to content

Commit 61fa838

Browse files
committed
refactor(dynamite): prefer using allocator over an emitter
Signed-off-by: Nikolas Rimikis <leptopoda@users.noreply.github.com>
1 parent ea9e05c commit 61fa838

File tree

1 file changed

+5
-13
lines changed

1 file changed

+5
-13
lines changed

packages/dynamite/dynamite/lib/src/builder/client.dart

+5-13
Original file line numberDiff line numberDiff line change
@@ -305,7 +305,7 @@ Iterable<Method> buildTags(
305305
),
306306
);
307307

308-
code.writeln(buildParameterSerialization(result, parameter, state));
308+
code.writeln(buildParameterSerialization(result, parameter, state, state.emitter.allocator.allocate));
309309
}
310310
resolveMimeTypeEncode(operation, spec, state, operationName, operationParameters).forEach(code.writeln);
311311

@@ -487,6 +487,7 @@ String buildParameterSerialization(
487487
TypeResult result,
488488
openapi.Parameter parameter,
489489
State state,
490+
String Function(Reference) allocate,
490491
) {
491492
final $default = parameter.schema?.$default;
492493
var defaultValueCode = $default?.value;
@@ -515,18 +516,9 @@ String buildParameterSerialization(
515516
}
516517

517518
if (parameter.$in == openapi.ParameterType.header) {
518-
final assignment = refer('_headers')
519-
.index(literalString(parameter.pctEncodedName))
520-
.assign(
521-
refer('HeaderEncoder', 'package:dynamite_runtime/utils.dart')
522-
.constInstance(const [], {
523-
'explode': literalBool(parameter.explode),
524-
})
525-
.property('convert')
526-
.call([refer(serializedName)]),
527-
)
528-
.statement
529-
.accept(state.emitter);
519+
final encoderRef = refer('HeaderEncoder', 'package:dynamite_runtime/utils.dart');
520+
final assignment =
521+
"_headers['${parameter.pctEncodedName}'] = ${allocate(encoderRef)}(explode: ${parameter.explode}).convert($serializedName);";
530522

531523
if ($default == null) {
532524
buffer

0 commit comments

Comments
 (0)