Line data Source code
1 : part of rx_bloc_generator; 2 : 3 : /// A mapper that converts a [FieldElement] into an event [Field] 4 : class _StateField implements _BuilderContract { 5 1 : const _StateField(this.field); 6 : 7 : final FieldElement field; 8 : 9 1 : @override 10 1 : Field build() => Field( 11 1 : (b) => b 12 3 : ..docs.addAll(<String>[ 13 4 : if (field.name.length <= 15) 14 5 : '/// The state of [${field.name}] implemented in [${field.stateMethodName}]', 15 5 : if (field.name.length > 15) ...<String>[ 16 3 : '/// The state of [${field.name}] implemented in ', 17 2 : '/// [${field.stateMethodName}]' 18 1 : ] 19 : ]) 20 2 : ..type = refer( 21 4 : 'late final ${field.type.getDisplayString(withNullability: true)}', 22 : ) 23 7 : ..assignment = refer(field.stateMethodName).newInstance([]).code 24 3 : ..name = field.stateFieldName, 25 : ); 26 : }