private void writeStackFrame(XmlWriter writer, Function func) {
		StackFrame frame = func.getStackFrame();

		XmlAttributes attrs = new XmlAttributes();
		attrs.addAttribute("LOCAL_VAR_SIZE", frame.getLocalSize(), true);
		attrs.addAttribute("PARAM_OFFSET", frame.getParameterOffset(), true);
//		attrs.addAttribute("REGISTER_SAVE_SIZE", -1);
		attrs.addAttribute("RETURN_ADDR_SIZE", frame.getReturnAddressOffset(), true);

		int size = func.getStackPurgeSize();
		if (size != Function.UNKNOWN_STACK_DEPTH_CHANGE &&
			size != Function.INVALID_STACK_DEPTH_CHANGE) {
			attrs.addAttribute("BYTES_PURGED", size);
		}

		writer.startElement("STACK_FRAME", attrs);

		Variable[] vars = frame.getStackVariables();
		for (Variable var : vars) {
			writeStackVariable(writer, var);
		}

		writer.endElement("STACK_FRAME");
	}
Returns the name of function qualified with
any namespace information.
For example, "User32.dll::SomeClass::printf".
Ghidra/Features/Base/src/main/java/ghidra/app/util/xml/FunctionsXmlMgr.java