rt/vm/src/main/java/org/apidesign/vm4brwsr/StringArray.java
changeset 1798 18b3a9a85716
parent 1787 ea12a3bb4b33
     1.1 --- a/rt/vm/src/main/java/org/apidesign/vm4brwsr/StringArray.java	Tue Feb 24 11:12:53 2015 +0100
     1.2 +++ b/rt/vm/src/main/java/org/apidesign/vm4brwsr/StringArray.java	Fri Feb 27 18:11:54 2015 +0100
     1.3 @@ -32,16 +32,23 @@
     1.4      }
     1.5      
     1.6      public void add(String s) {
     1.7 +        add(s, false);
     1.8 +    }
     1.9 +    private boolean add(String s, boolean check) {
    1.10          if (arr == null) {
    1.11              arr = new String[1];
    1.12          } else {
    1.13              String[] tmp = new String[arr.length + 1];
    1.14              for (int i = 0; i < arr.length; i++) {
    1.15 +                if (check && s.equals(arr[i])) {
    1.16 +                    return false;
    1.17 +                }
    1.18                  tmp[i] = arr[i];
    1.19              }
    1.20              arr = tmp;
    1.21          }
    1.22          arr[arr.length - 1] = s;
    1.23 +        return true;
    1.24      }
    1.25  
    1.26      StringArray addAndNew(String... values) {
    1.27 @@ -130,4 +137,8 @@
    1.28      void clear() {
    1.29          arr = null;
    1.30      }
    1.31 +
    1.32 +    boolean addIfMissing(String s) {
    1.33 +        return add(s, true);
    1.34 +    }
    1.35  }