1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1.2 +++ b/vm/src/main/java/org/apidesign/vm4brwsr/StringArray.java Fri Nov 16 07:36:32 2012 +0100
1.3 @@ -0,0 +1,84 @@
1.4 +/*
1.5 + * To change this template, choose Tools | Templates
1.6 + * and open the template in the editor.
1.7 + */
1.8 +package org.apidesign.vm4brwsr;
1.9 +
1.10 +/**
1.11 + *
1.12 + * @author Jaroslav Tulach <jtulach@netbeans.org>
1.13 + */
1.14 +class StringArray {
1.15 + private String[] arr;
1.16 +
1.17 + public StringArray() {
1.18 + }
1.19 +
1.20 + private StringArray(String[] arr) {
1.21 + this.arr = arr;
1.22 + }
1.23 +
1.24 + public void add(String s) {
1.25 + if (arr == null) {
1.26 + arr = new String[1];
1.27 + } else {
1.28 + String[] tmp = new String[arr.length + 1];
1.29 + for (int i = 0; i < arr.length; i++) {
1.30 + tmp[i] = arr[i];
1.31 + }
1.32 + arr = tmp;
1.33 + }
1.34 + arr[arr.length - 1] = s;
1.35 + }
1.36 +
1.37 + public String[] toArray() {
1.38 + return arr == null ? new String[0] : arr;
1.39 + }
1.40 +
1.41 + static StringArray asList(String[] names) {
1.42 + return new StringArray(names);
1.43 + }
1.44 +
1.45 + void reverse() {
1.46 + for (int i = 0, j = arr.length; i < j; i++) {
1.47 + String s = arr[i];
1.48 + arr[i] = arr[--j];
1.49 + arr[j] = s;
1.50 + }
1.51 + }
1.52 +
1.53 + boolean contains(String n) {
1.54 + if (arr == null) {
1.55 + return false;
1.56 + }
1.57 + for (int i = 0; i < arr.length; i++) {
1.58 + if (n.equals(arr[i])) {
1.59 + return true;
1.60 + }
1.61 + }
1.62 + return false;
1.63 + }
1.64 +
1.65 + void delete(int indx) {
1.66 + if (arr == null) {
1.67 + return;
1.68 + }
1.69 + String[] tmp = new String[arr.length - 1];
1.70 + for (int i = 0, j = 0; i < arr.length; i++) {
1.71 + tmp[j] = arr[i];
1.72 + if (j == indx) {
1.73 + continue;
1.74 + }
1.75 + }
1.76 + }
1.77 +
1.78 + int indexOf(String ic) {
1.79 + for (int i = 0; i < arr.length; i++) {
1.80 + if (ic.equals(arr[i])) {
1.81 + return i;
1.82 + }
1.83 + }
1.84 + return -1;
1.85 + }
1.86 +
1.87 +}