Split API into cross-platform OS-detection and native-only Platform i… #2
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The cross-platform OS detection is in
package:platform/host.dart
, in theHostPlatform
class.The native-only platform inspection in
package:platform/native.dart
in theNativePlatform
class.There are also
package:platform/host_test.dart
, andpackage:platform/native_test.dart
, which provides a mock for each of the platform classes,MockHostPlatform
andMockNativePlatform
.Existing code can keep importing
package:platform/platform.dart
, which exports thehost.dart
library, but also type-aliases for native-capable platforms to match the existingPlatform
,FakePlatform
andLocalPlatform
names. Those legacy names will eventually be deprecated.