range_collection 0.1.0 copy "range_collection: ^0.1.0" to clipboard
range_collection: ^0.1.0 copied to clipboard

Dart 1 only

A collection library for range.

range_collection #

A collection library for Range data type. This project is heavily inspired by Guava's Range, RangeSet and RangeMap classes.

Usage #

A simple usage example:

library range_collection.example;

import 'package:range_collection/range_collection.dart';

main() {
  RangeSet<int> rangeSet = new SkipListRangeSet<int>();
  rangeSet.add(new Range.closed(1, 10));
  print(rangeSet); // {[1, 10]}

  rangeSet.add(new Range.closedOpen(11, 15));
  print(rangeSet); // disconnected range; {[1, 10], [11, 15)}

  rangeSet.add(new Range.closedOpen(15, 20));
  print(rangeSet); // connected range; {[1, 10], [11, 20)}

  rangeSet.add(new Range.openClosed(0, 0));
  print(rangeSet); // empty range; {[1, 10], [11, 20)}

  rangeSet.remove(new Range.open(5, 10));
  print(rangeSet); // splits [1, 10]; {[1, 5], [10, 10], [11, 20)}}
}

Features and bugs #

Please file feature requests and bugs at the issue tracker.

0
likes
30
points
4
downloads

Publisher

unverified uploader

Weekly Downloads

A collection library for range.

Repository (GitHub)
View/report issues

License

BSD-3-Clause (license)

Dependencies

interval_skip_list, quiver

More

Packages that depend on range_collection