Skip to content

Commit 408ccb8

Browse files
add public_member_api_docs rule
1 parent be61d4c commit 408ccb8

25 files changed

+284
-6
lines changed

splitio/analysis_options.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,3 +2,7 @@ include: package:flutter_lints/flutter.yaml
22

33
# Additional information about this file can be found at
44
# https://dart.dev/guides/language/analysis-options
5+
6+
linter:
7+
rules:
8+
- public_member_api_docs

splitio/example/lib/main.dart

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
// ignore_for_file: avoid_print
2+
13
import 'package:flutter/material.dart';
24
import 'package:splitio/splitio.dart';
35

splitio/lib/split_client.dart

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import 'package:splitio_platform_interface/splitio_platform_interface.dart';
22

3+
/// Abstract class representing a Split client.
34
abstract class SplitClient {
45
/// Performs an evaluation for the [featureFlagName] feature flag.
56
///
@@ -187,11 +188,13 @@ abstract class SplitClient {
187188
Future<SplitClient> whenTimeout();
188189
}
189190

191+
/// Default implementation of the Split client.
190192
class DefaultSplitClient implements SplitClient {
191193
final SplitioPlatform _platform;
192194
final String _matchingKey;
193195
final String? _bucketingKey;
194196

197+
/// Creates a new instance of the Split client.
195198
DefaultSplitClient(this._platform, this._matchingKey, this._bucketingKey);
196199

197200
@override

splitio/lib/splitio.dart

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,10 @@ export 'package:splitio_platform_interface/split_rollout_cache_configuration.dar
1515
export 'package:splitio_platform_interface/split_fallback_treatment.dart';
1616
export 'package:splitio_platform_interface/split_fallback_treatments_configuration.dart';
1717

18+
/// Callback function type for client readiness events.
1819
typedef ClientReadinessCallback = void Function(SplitClient splitClient);
1920

21+
/// Main class for interacting with the Split Flutter SDK.
2022
class Splitio {
2123
final String _sdkKey;
2224

@@ -114,12 +116,14 @@ class Splitio {
114116
return client;
115117
}
116118

119+
/// Gets the list of all feature flag names.
117120
Future<List<String>> splitNames() async {
118121
List<String> splitNames = await _platform.splitNames();
119122

120123
return splitNames;
121124
}
122125

126+
/// Gets the list of all feature flag views.
123127
Future<List<SplitView>> splits() async {
124128
return _platform.splits();
125129
}
@@ -130,14 +134,22 @@ class Splitio {
130134
return _platform.impressionsStream();
131135
}
132136

137+
/// Gets a specific feature flag view.
138+
///
139+
/// Returns null if the provided feature flag name is not found.
133140
Future<SplitView?> split(String splitName) async {
134141
return _platform.split(splitName: splitName);
135142
}
136143

144+
/// Gets the user consent status.
137145
Future<UserConsent> getUserConsent() async {
138146
return _platform.getUserConsent();
139147
}
140148

149+
/// Sets the user consent status.
150+
///
151+
/// [enabled] is a boolean that enables (`UserConsent.granted`)
152+
/// or disables (`UserConsent.declined`) data collection.
141153
Future<void> setUserConsent(bool enabled) async {
142154
return _platform.setUserConsent(enabled);
143155
}

splitio_android/analysis_options.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,3 +2,7 @@ include: package:flutter_lints/flutter.yaml
22

33
# Additional information about this file can be found at
44
# https://dart.dev/guides/language/analysis-options
5+
6+
linter:
7+
rules:
8+
- public_member_api_docs

splitio_ios/analysis_options.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,3 +2,7 @@ include: package:flutter_lints/flutter.yaml
22

33
# Additional information about this file can be found at
44
# https://dart.dev/guides/language/analysis-options
5+
6+
linter:
7+
rules:
8+
- public_member_api_docs

splitio_platform_interface/analysis_options.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,3 +2,7 @@ include: package:flutter_lints/flutter.yaml
22

33
# Additional information about this file can be found at
44
# https://dart.dev/guides/language/analysis-options
5+
6+
linter:
7+
rules:
8+
- public_member_api_docs

splitio_platform_interface/lib/events/split_method_call_handler.dart

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ import 'dart:async';
22

33
import 'package:splitio_platform_interface/method_call_handler.dart';
44

5+
/// Handler for Split SDK events
56
class SplitEventMethodCallHandler implements MethodCallHandler {
67
static const String _eventClientReady = 'clientReady';
78
static const String _eventClientReadyFromCache = 'clientReadyFromCache';
@@ -24,6 +25,7 @@ class SplitEventMethodCallHandler implements MethodCallHandler {
2425
_eventClientTimeout: false,
2526
};
2627

28+
/// Creates a new instance of the Split event method call handler.
2729
SplitEventMethodCallHandler(this._matchingKey, this._bucketingKey);
2830

2931
@override
@@ -48,26 +50,32 @@ class SplitEventMethodCallHandler implements MethodCallHandler {
4850
}
4951
}
5052

53+
/// Returns Future that is completed when the SDK client is ready.
5154
Future<void> onReady() {
5255
return _onEvent(_eventClientReady);
5356
}
5457

58+
/// Returns Future that is completed when the SDK client is ready from cache.
5559
Future<void> onReadyFromCache() {
5660
return _onEvent(_eventClientReadyFromCache);
5761
}
5862

63+
/// Returns Stream that emits when the SDK client is updated.
5964
Stream<void> onUpdated() {
6065
return _updateStreamCompleter.stream;
6166
}
6267

68+
/// Returns Future that is completed when the SDK client times out.
6369
Future<void> onTimeout() {
6470
return _onEvent(_eventClientTimeout);
6571
}
6672

73+
/// Cleans up resources.
6774
void destroy() {
6875
_updateStreamCompleter.close();
6976
}
7077

78+
/// Returns Future that is completed when the specified SDK event occurs.
7179
Future<void> _onEvent(String sdkEvent) {
7280
if (_triggeredClientEvents.containsKey(sdkEvent) &&
7381
_triggeredClientEvents[sdkEvent] == true) {

splitio_platform_interface/lib/impressions/impressions_method_call_handler.dart

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ import 'dart:async';
33
import 'package:splitio_platform_interface/method_call_handler.dart';
44
import 'package:splitio_platform_interface/split_impression.dart';
55

6+
/// Handles impressions method calls.
67
class ImpressionsMethodCallHandler extends StreamMethodCallHandler<Impression> {
78
final _streamController = StreamController<Impression>();
89

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,11 @@
1+
/// Abstract class for handling method calls.
12
abstract class MethodCallHandler {
3+
/// Handles a method call with the given method name and arguments.
24
Future<void> handle(String methodName, dynamic methodArguments);
35
}
46

7+
/// Abstract class for handling stream method calls.
58
abstract class StreamMethodCallHandler<T> extends MethodCallHandler {
9+
/// Returns a stream of the given type.
610
Stream<T> stream();
711
}

0 commit comments

Comments
 (0)