safe_cast 1.0.2 copy "safe_cast: ^1.0.2" to clipboard
safe_cast: ^1.0.2 copied to clipboard

Dart library to provides safe way to cast objects or dynamics

example/example.dart

import 'dart:math';

import 'package:safe_cast/safe_cast.dart';

abstract class Fruit {}

class Apple extends Fruit {}

class Banana extends Fruit {}

class Car {}

dynamic _randomObject() => switch (Random().nextInt(3)) {
      0 => Apple(),
      1 => Banana(),
      _ => Car(),
    };

void main() {
  dynamic object = _randomObject();
  final fruit = Cast.asNullable<Fruit>(object);
  if (fruit != null) {
    print('Eat fruit $fruit');
  } else {
    final car = Cast.as<Car>(object);
    print('Driving a $car');
  }
}
0
likes
160
points
5
downloads

Publisher

verified publisherdig.dev.br

Weekly Downloads

Dart library to provides safe way to cast objects or dynamics

Repository (GitHub)
View/report issues

Topics

#null-safety #types #type-safe #type-safety

Documentation

API reference

License

MIT (license)

More

Packages that depend on safe_cast