aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/java/com/libmailcore/IndexSet.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/java/com/libmailcore/IndexSet.java')
-rw-r--r--src/java/com/libmailcore/IndexSet.java32
1 files changed, 32 insertions, 0 deletions
diff --git a/src/java/com/libmailcore/IndexSet.java b/src/java/com/libmailcore/IndexSet.java
new file mode 100644
index 00000000..ed48fdb1
--- /dev/null
+++ b/src/java/com/libmailcore/IndexSet.java
@@ -0,0 +1,32 @@
+package com.libmailcore;
+
+import java.util.List;
+
+public class IndexSet extends NativeObject {
+ public IndexSet() {
+ setupNative();
+ }
+
+ public static native IndexSet indexSet();
+ public static native IndexSet indexSetWithRange(Range range);
+ public static native IndexSet indexSetWithIndex(long idx);
+
+ public native int count();
+ public native void addIndex(long idx);
+ public native void removeIndex(long idx);
+ public native boolean containsIndex(long idx);
+
+ public native void addRange(Range range);
+ public native void removeRange(Range range);
+ public native void intersectsRange(Range range);
+
+ public native void addIndexSet(IndexSet indexSet);
+ public native void removeIndexSet(IndexSet indexSet);
+ public native void intersectsIndexSet(IndexSet indexSet);
+
+ public native List<Range> allRanges();
+ public native int rangesCount();
+ public native void removeAllIndexes();
+
+ private native void setupNative();
+}