MCPcopy Create free account
hub / github.com/AstroImageJ/astroimagej / doList

Method doList

ij/src/main/java/ij/macro/Functions.java:5877–5964  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

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("")) {

Callers 1

getStringFunctionMethod · 0.95

Calls 15

getStringArgMethod · 0.95
getFirstStringMethod · 0.95
getLastStringMethod · 0.95
getPropertiesAsStringMethod · 0.95
setMeasurementsMethod · 0.95
setCommandsMethod · 0.95
listToArraysMethod · 0.95
getStringArrayMethod · 0.95
getFirstArrayVariableMethod · 0.95
getLastArrayVariableMethod · 0.95
setArrayMethod · 0.95

Tested by

no test coverage detected