()
| 5875 | } |
| 5876 | |
| 5877 | String doList() { |
| 5878 | interp.getToken(); |
| 5879 | if (interp.token!='.') |
| 5880 | interp.error("'.' expected"); |
| 5881 | interp.getToken(); |
| 5882 | if (!(interp.token==WORD||interp.token==ARRAY_FUNCTION||interp.token==NUMERIC_FUNCTION)) |
| 5883 | interp.error("Function name expected: "); |
| 5884 | if (props==null) |
| 5885 | props = new Properties(); |
| 5886 | String value = null; |
| 5887 | String name = interp.tokenString; |
| 5888 | if (name.equals("get")) { |
| 5889 | value = props.getProperty(getStringArg()); |
| 5890 | value = value!=null?value:""; |
| 5891 | } else if (name.equals("getValue")) { |
| 5892 | value = props.getProperty(getStringArg()); |
| 5893 | if (value==null) interp.error("Value not found"); |
| 5894 | } else if (name.equals("set")||name.equals("add")||name.equals("put")) |
| 5895 | props.setProperty(getFirstString(), getLastString()); |
| 5896 | else if (name.equals("clear")||name.equals("reset")) { |
| 5897 | interp.getParens(); |
| 5898 | props.clear(); |
| 5899 | } else if (name.equals("setList")) |
| 5900 | setPropertiesFromString(props); |
| 5901 | else if (name.equals("getList")) |
| 5902 | value = getPropertiesAsString(props); |
| 5903 | else if (name.equals("size")||name.equals("getSize")) { |
| 5904 | interp.getParens(); |
| 5905 | value = ""+props.size(); |
| 5906 | } else if (name.equals("setMeasurements")) |
| 5907 | setMeasurements(); |
| 5908 | else if (name.equals("setCommands")) |
| 5909 | setCommands(); |
| 5910 | else if (name.equals("indexOf")) { |
| 5911 | int index = -1; |
| 5912 | String key = getStringArg(); |
| 5913 | int size = props.size(); |
| 5914 | String[] keyArr = new String[size]; |
| 5915 | String[] valueArr = new String[size]; |
| 5916 | listToArrays(keyArr, valueArr); |
| 5917 | for (int i = 0; i < size; i++) { |
| 5918 | if (keyArr[i].equals(key)) { |
| 5919 | index = i; |
| 5920 | break; |
| 5921 | } |
| 5922 | } |
| 5923 | value = "" + index; |
| 5924 | } else if (name.equals("fromArrays")) { |
| 5925 | interp.getLeftParen(); |
| 5926 | String[] keys = getStringArray(); |
| 5927 | interp.getComma(); |
| 5928 | String[] values = getStringArray(); |
| 5929 | if (values.length != keys.length) { |
| 5930 | interp.error("Arrays must have same length"); |
| 5931 | } |
| 5932 | props.clear(); |
| 5933 | for (int i = 0; i < keys.length; i++) { |
| 5934 | if (keys[i].equals("")) { |
no test coverage detected