static void saveLocally(S variableName) { saveLocally(programID(), variableName); } static void saveLocally(S progID, S variableName) { saveLocally2(mc(), progID, variableName); } static void saveLocally2(O obj, S variableName) { saveLocally2(obj, programID(), variableName); } static File saveLocally2(O obj, S progID, S variableName) { lock saveLock(); File textFile = new File(programDir(progID), variableName + ".text"); File structureFile = new File(programDir(progID), variableName + ".structure"); O x = get(obj, variableName); if (x == null) { textFile.delete(); structureFile.delete(); null; } else if (x instanceof String) { saveTextFile(textFile, (S) x); structureFile.delete(); ret textFile; } else { saveTextFile(structureFile, javaTokWordWrap(structure(x))); textFile.delete(); ret structureFile; } }