fromElement static method
Implementation
static ServerReflect? fromElement(Element? element) {
if (element == null) {
return null;
}
if (element is! ClassElement) {
return null;
}
if (element.library.isInSdk) {
return null;
}
final className = element.displayName;
final importPath = element.importPath;
final metas = <String, List<ServerMimic>>{};
for (final field in element.fields) {
getAnnotations(
element: field,
onMatch: [
OnMatch(
classType: MetaData,
package: 'revali_router_annotations',
convert: (object, annotation) {
final meta = ServerMimic.fromDartObject(object, annotation);
if (field.name3 case final String name) {
(metas[name] ??= []).add(meta);
}
},
),
],
);
}
return ServerReflect(
className: className,
importPath: ServerImports([if (importPath != null) importPath]),
metas: metas,
);
}