protected List<AssemblyParseTreeNode> orderOpNodes(AssemblyConstructorSemantic sem) {
		Constructor cons = sem.getConstructor();
		AssemblyParseTreeNode[] arr = new AssemblyParseTreeNode[cons.getNumOperands()];
		List<AssemblyParseTreeNode> result = Arrays.asList(arr);
		Arrays.fill(arr, new AssemblyParseHiddenNode(resolver.grammar));
		int index = 0;
		AssemblyProduction production = node.getProduction();
		List<AssemblyParseTreeNode> substitutions = node.getSubstitutions();
		for (int i = 0; i < production.getRHS().size(); i++) {
			AssemblySymbol sym = production.getRHS().getSymbol(i);
			if (!sym.takesOperandIndex()) {
				continue;
			}
			result.set(sem.getOperandIndex(index), substitutions.get(i));
			index++;
		}
		return result;
	}
Arrange the branch's (mnemonic) children according to the machine-code production

<p>
This orders the parsed children so that each is readily paired to its operand as given by
{@link Constructor#getOperand(int)}.

@param sem the SLEIGH constructor whose machine-code production to consider
@return the children arranged in constructor operand order
Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/app/plugin/assembler/sleigh/sem/AssemblyConstructStateGenerator.java