getValidations function
String
getValidations(
- ParameterElement param
)
Implementation
String getValidations(ParameterElement param) {
final buffer = StringBuffer();
final isNullable = param.type.nullabilitySuffix == NullabilitySuffix.question;
if (param.type is DynamicType) {
buffer.write('l.any()');
}
if (param.type.isDartCoreBool) {
buffer.write('l.bool()');
}
if (param.type.isDartCoreDouble) {
buffer.write('l.double()');
buffer.write(getDoubleValidations(param));
}
if (param.type.isDartCoreInt) {
buffer.write('l.int()');
buffer.write(getIntValidations(param));
}
if (param.type.isDartCoreList) {
_writeListValidations(buffer, param);
}
if (param.type.isDartCoreNull) {
buffer.write('l.nullValue()');
}
if (param.type.isDartCoreNum) {
buffer.write('l.number()');
buffer.write(getNumberValidations(param));
}
if (param.type.isDartCoreString ||
param.type.getDisplayString(withNullability: false) == 'DateTime') {
buffer.write('l.string()');
buffer.write(getStringValidations(param));
}
if (buffer.isEmpty) {
_checkAndAddCustomSchema(buffer, param);
}
getCustomValidations(param, buffer);
final hasDefaultAnnotation = getAnnotation(defaultChecker, param) != null;
if (param.type is! DynamicType && !isNullable && !hasDefaultAnnotation) {
buffer.write('.required()');
}
return buffer.toString();
}