first commit
This commit is contained in:
23
lib/backend/schema/enums/enums.dart
Normal file
23
lib/backend/schema/enums/enums.dart
Normal file
@@ -0,0 +1,23 @@
|
||||
import 'package:collection/collection.dart';
|
||||
|
||||
enum Position {
|
||||
director,
|
||||
}
|
||||
|
||||
extension FFEnumExtensions<T extends Enum> on T {
|
||||
String serialize() => name;
|
||||
}
|
||||
|
||||
extension FFEnumListExtensions<T extends Enum> on Iterable<T> {
|
||||
T? deserialize(String? value) =>
|
||||
firstWhereOrNull((e) => e.serialize() == value);
|
||||
}
|
||||
|
||||
T? deserializeEnum<T>(String? value) {
|
||||
switch (T) {
|
||||
case (Position):
|
||||
return Position.values.deserialize(value) as T?;
|
||||
default:
|
||||
return null;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user