public static String generateSleighLine(Language language, Address address, byte[] data,
			int length) {
		BigInteger value = Utils.bytesToBigInteger(data, length, language.isBigEndian(), false);
		if (address.isMemoryAddress()) {
			AddressSpace space = address.getAddressSpace();
			if (language.getDefaultSpace() == space) {
				return String.format("*:%d 0x%s:%d=0x%s",
					length,
					address.getOffsetAsBigInteger().toString(16), space.getPointerSize(),
					value.toString(16));
			}
			return String.format("*[%s]:%d 0x%s:%d=0x%s",
				space.getName(), length,
				address.getOffsetAsBigInteger().toString(16), space.getPointerSize(),
				value.toString(16));
		}
		Register register = language.getRegister(address, length);
		if (register == null) {
			throw new AssertionError("Can only modify memory or register");
		}
		return String.format("%s=0x%s", register, value.toString(16));
	}
Generate a single line of Sleigh

<p>
Note that when length is greater than 8, this will generate constants which are too large for
the Java implementation of Sleigh. Use {@link #generateSleigh(Language, Address, byte[])}
instead to write the variable in chunks.

@param language the target language
@param address the (start) address of the variable
@param data the bytes to write to the variable
@param length the length of the variable
@return the Sleigh code
Ghidra/Debug/Framework-TraceModeling/src/main/java/ghidra/trace/model/time/schedule/PatchStep.java