flutter_catalyst 1.0.2
flutter_catalyst: ^1.0.2 copied to clipboard
A dependency injection container which also supports autowiring of services.
flutter_catalyst #
Catalyst is a dependency injection container for the dart language.
The flutter_catalyst project is a port of the catalyst project to provide dependency injection in Flutter projects.
📦 Installation #
Add the following to your pubspec.yaml
:
dependencies:
flutter_catalyst: ^1.0.0
Then run pub get
💡 Usage #
Importing #
import 'package:flutter_catalyst/flutter_catalyst.dart';
Check out the examples
Supported functions:
Function | Description |
---|---|
get registeredTypes | Return all registered types |
register<T>(T service) | Register a service for a specific interface |
registerInterface<TB, T extends TB>(T service) | Register a service |
registerWithDependencies<T>(serviceFactory, dependencies) | Register a serviceFactory with dependencies |
registerInterfaceWithDependencies<TB, T extends TB>(serviceFactory, dependencies) | Register a serviceFactory with dependencies for a specific interface |
unregister<T>() | Unregister a service |
get<T>() | Get a service by passing its type as |
has<T>() | Check if a specific service is registered |
wire() | Wire the services with dependencies (register*WithDependencies() ) |
destroy() | Destroy the service container instance |
getFromToken<T>() | Get a service which was wrapped inside a InjectionToken |
🔬 Testing #
$ pub run test
🤝 Contribute #
Feel free to fork and add pull-requests 🤓