getToCode method
CodePartDj
getToCode(
- List<FieldDj> fields
)
Implementation
CodePartDj getToCode(List<FieldDj> fields) {
var bodyCodeLines = <String>["codeLines.add('$name( '); "];
fields.forEach((field) {
if (field.name != 'baseWidgetDjType' &&
!(field.name?.startsWith('_') ?? false)) {
bodyCodeLines.add('if(${field.name} != null) { ');
var fieldValue = '\${dynamicParameterParser(${field.name})}';
if (field.isOptional ?? false) {
bodyCodeLines.add("codeLines.add('${field.name} : $fieldValue, '); ");
} else {
bodyCodeLines.add("codeLines.add('$fieldValue, '); ");
}
bodyCodeLines.add('}');
}
});
bodyCodeLines.add("codeLines.add(') '); ");
List<CodePartDj>? bodyCodeParts = [
VariableDeclarationDj(
dataType: VariableType.Var,
name: 'codeLines',
initialValue: '<String>[]',
),
];
bodyCodeParts += bodyCodeLines.map((e) => SingleLineDj(line: e)).toList();
bodyCodeParts.add(
ReturnDj(
returnStr: 'codeLines',
),
);
CodePartDj codePartDj = FunctionDj(
annotations: ['override'],
outputType: VariableType.ListString,
name: 'toCode',
bodyCodeParts: bodyCodeParts,
);
return codePartDj;
}