private static void appendOption(Encoder encoder, ElementId option, String p1, String p2,
			String p3) throws IOException {
		encoder.openElement(option);
		if ((p2.length() == 0) && (p3.length() == 0)) {
			encoder.writeString(ATTRIB_CONTENT, p1);
		}
		else {
			encoder.openElement(ELEM_PARAM1);
			encoder.writeString(ATTRIB_CONTENT, p1);
			encoder.closeElement(ELEM_PARAM1);
			encoder.openElement(ELEM_PARAM2);
			encoder.writeString(ATTRIB_CONTENT, p2);	// Print even if empty, as p3 isn't
			encoder.closeElement(ELEM_PARAM2);
			if (p3.length() != 0) {
				encoder.openElement(ELEM_PARAM3);
				encoder.writeString(ATTRIB_CONTENT, p3);
				encoder.closeElement(ELEM_PARAM3);
			}
		}
		encoder.closeElement(option);
	}
This registers all the decompiler tool options with ghidra, and has the side effect of
pulling all the current values for the options if they exist
@param fieldOptions the options object specific to listing fields
@param opt          the options object specific to the decompiler
@param program      the program
Ghidra/Features/Decompiler/src/main/java/ghidra/app/decompiler/DecompileOptions.java