FeatureFlags class
Type-safe feature flag definitions
This class provides a type-safe way to define and access feature flags.
Usage
// Create a flag provider
final provider = MyFlagProvider();
// Create feature flags
final flags = FeatureFlags(provider);
// Define flags
final enableNewUI = flags.boolean(
key: 'enable_new_ui',
defaultValue: false,
);
// Use flags
if (enableNewUI.value) {
// Show new UI
}
Constructors
- FeatureFlags.new(FlagProvider _provider)
Properties
- hashCode → int
-
The hash code for this object.
no setterinherited
- provider → FlagProvider
-
Public getter for the provider
no setter
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
boolean(
{required String key, required bool defaultValue, String? description, Set< String> ? tags}) → BooleanFlag - Create a boolean flag
-
dispose(
) → void - Clean up resources (call when disposing)
-
enumFlag<
T extends Enum> ({required String key, required T defaultValue, required List< T> values, String? description, Set<String> ? tags}) → EnumFlag<T> - Create an enum flag
-
json<
T> ({required String key, required T defaultValue, T parser(Map< String, dynamic> )?, Map<String, dynamic> serializer(T)?, String? description, Set<String> ? tags}) → JsonFlag<T> - Create a JSON flag
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
number(
{required String key, required double defaultValue, double? min, double? max, String? description, Set< String> ? tags}) → NumberFlag - Create a number flag
-
string(
{required String key, required String defaultValue, String? description, Set< String> ? tags, List<String> ? allowedValues}) → StringFlag - Create a string flag
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited