ClassDeclaration constructor
const
ClassDeclaration()
Represents a reflected Dart class and all of its metadata, including fields, methods, constructors, superclasses, mixins, interfaces, and declaration-level modifiers (abstract, sealed, etc.).
This interface combines both SourceDeclaration and TypeDeclaration, allowing it to be used both as a type descriptor and a declaration node.
Use this class to introspect:
- Class members: fields, methods, constructors
- Generic type parameters
- Supertype, mixins, and implemented interfaces
- Modifiers like
abstract
,sealed
,base
, etc. - Runtime instantiation via
newInstance()
Example
final type = reflector.reflectType(MyService).asClassType();
print('Class: ${type?.getName()}');
for (final method in type!.getMethods()) {
print('Method: ${method.getName()}');
}
final instance = type.newInstance({'message': 'Hello'});
Implementation
const ClassDeclaration();