diff options
| author | Michael Williamson <mike@zwobble.org> | 2018-01-28 12:36:26 +0000 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2018-01-28 12:36:26 +0000 |
| commit | 56e424be69f5728d36ed59509284e6592ee374ce (patch) | |
| tree | c66d20ce4bb0d68518bf7d5fff839913f0fe4866 /Mammoth/Couscous/java | |
| parent | c5f9b5e6971da9611b599991858e9c4dd23ee008 (diff) | |
Update java-mammoth
Diffstat (limited to 'Mammoth/Couscous/java')
| -rw-r--r-- | Mammoth/Couscous/java/util/ArrayList.cs | 13 | ||||
| -rw-r--r-- | Mammoth/Couscous/java/util/List.cs | 2 | ||||
| -rw-r--r-- | Mammoth/Couscous/java/util/OptionalInt.cs | 9 | ||||
| -rw-r--r-- | Mammoth/Couscous/java/util/function/IntFunction.cs | 5 |
4 files changed, 29 insertions, 0 deletions
diff --git a/Mammoth/Couscous/java/util/ArrayList.cs b/Mammoth/Couscous/java/util/ArrayList.cs index 81d180c..2bd3031 100644 --- a/Mammoth/Couscous/java/util/ArrayList.cs +++ b/Mammoth/Couscous/java/util/ArrayList.cs @@ -39,6 +39,15 @@ namespace Mammoth.Couscous.java.util { } } + public List<T> subList(int fromIndex, int toIndex) { + var list = _list as System.Collections.Generic.List<T>; + if (list == null) { + throw new System.NotImplementedException(); + } else { + return new ArrayList<T>(list.GetRange(fromIndex, toIndex - fromIndex)); + } + } + public void add(T value) { _list.Add(value); } @@ -52,5 +61,9 @@ namespace Mammoth.Couscous.java.util { public void set(int index, T value) { _list[index] = value; } + + public void clear() { + _list.Clear(); + } } } diff --git a/Mammoth/Couscous/java/util/List.cs b/Mammoth/Couscous/java/util/List.cs index 38641e3..5082968 100644 --- a/Mammoth/Couscous/java/util/List.cs +++ b/Mammoth/Couscous/java/util/List.cs @@ -3,7 +3,9 @@ using Mammoth.Couscous.java.lang; namespace Mammoth.Couscous.java.util { interface List<T> : Collection<T> { T get(int index); + List<T> subList(int fromIndex, int toIndex); T remove(int index); void set(int index, T value); + void clear(); } } diff --git a/Mammoth/Couscous/java/util/OptionalInt.cs b/Mammoth/Couscous/java/util/OptionalInt.cs index 4dfca2f..fb92624 100644 --- a/Mammoth/Couscous/java/util/OptionalInt.cs +++ b/Mammoth/Couscous/java/util/OptionalInt.cs @@ -6,6 +6,7 @@ namespace Mammoth.Couscous.java.util { bool isPresent(); int getAsInt(); + int orElse(int elseValue); } internal struct NoneInt : OptionalInt { @@ -18,6 +19,10 @@ namespace Mammoth.Couscous.java.util public int getAsInt() { throw new NoSuchElementException(); } + + public int orElse(int elseValue) { + return elseValue; + } } internal struct SomeInt : OptionalInt { @@ -34,5 +39,9 @@ namespace Mammoth.Couscous.java.util public int getAsInt() { return _value; } + + public int orElse(int elseValue) { + return _value; + } } } diff --git a/Mammoth/Couscous/java/util/function/IntFunction.cs b/Mammoth/Couscous/java/util/function/IntFunction.cs new file mode 100644 index 0000000..7190cee --- /dev/null +++ b/Mammoth/Couscous/java/util/function/IntFunction.cs @@ -0,0 +1,5 @@ +namespace Mammoth.Couscous.java.util.function { + internal interface IntFunction<R> { + R apply(int arg); + } +} |
