Skip to content

Value objects PositiveInt and PositiveDouble that incapsulate a positive number in Dart

License

Notifications You must be signed in to change notification settings

maxeema/positive_num

Repository files navigation

The package contains immutable value objects PositiveInt and PositiveDouble that encapsulate a positive number (any number greater than 0) which can be int or double. The value objects guarantee that their value is always positive and can't be changed after creation. They can't be created with 0 or a negative value.

Getting started

How to start using the package

dart pub add positive_num

Or specify the package's git url in pubspec.yaml at the dependencies section.

dependencies:
  positive_num:
    git:
      url: https://github.com/maxeema/positive_num.git

Then import it in your code.

import 'package:positive_num/positive_num.dart';

Usage

import 'package:positive_num/positive_num.dart';

void main() {
  var someNumber = 1;
  //
  final (:error, :instance) = PositiveInt.create(someNumber);
  if (instance != null) {
    final positiveInt = instance;
    print('Created a PositiveInt, value: $positiveInt');
  } else {
    print('Error. $error');
  }
}

Before run

dart pub get

Run example

dart run example/positive_num_example.dart

Run tests

dart test

Copyright

© Max Shemetov, 2023

About

Value objects PositiveInt and PositiveDouble that incapsulate a positive number in Dart

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages