NativeIterable.hx 606 B

123456789101112131415161718
  1. package python;
  2. import python.HaxeIterable;
  3. import python.NativeIterator;
  4. abstract NativeIterable <T>(NativeIterableRaw<T>) to NativeIterableRaw<T> from NativeIterableRaw<T> {
  5. @:to public inline function toHaxeIterable():HaxeIterable<T> return new HaxeIterable(this);
  6. public inline function iterator():HaxeIterator<T> return toHaxeIterable().iterator();
  7. public inline function getNativeIterable():NativeIterableRaw<T> return this;
  8. public inline function getNativeIterator():NativeIteratorRaw<T> return this.__iter__();
  9. }
  10. typedef NativeIterableRaw<T> = {
  11. function __iter__():NativeIterator<T>;
  12. }