protected AbstractAssemblyResolvedPatternsBuilder<RP> fromStringBuilder(String str,
			String description, List<AssemblyResolution> children) {
		var builder = newPatternsBuilder();
		builder.description = description;
		builder.children = children;
		if (str.startsWith(INS)) {
			int end = str.indexOf(SEP);
			if (end == -1) {
				end = str.length();
			}
			builder.ins = AssemblyPatternBlock.fromString(str.substring(INS.length(), end));
			str = str.substring(end);
			if (str.startsWith(SEP)) {
				str = str.substring(1);
			}
		}
		if (str.startsWith(CTX)) {
			int end = str.length();
			builder.ctx = AssemblyPatternBlock.fromString(str.substring(CTX.length(), end));
			str = str.substring(end);
		}
		if (str.length() != 0) {
			throw new IllegalArgumentException(str);
		}
		return builder;
	}
Build a successful resolution result from a SLEIGH constructor's patterns

@param pat the constructor's pattern
@param description a description of the resolution
@return the new resolution
Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/app/plugin/assembler/sleigh/sem/AbstractAssemblyResolutionFactory.java