protected <T extends PatternExpression> AbstractExpressionSolver<T> getRegistered(
			Class<?> tcls) {
		@SuppressWarnings("unchecked")
		AbstractExpressionSolver<T> s = (AbstractExpressionSolver<T>) registry.get(tcls);
		if (s == null) {
			throw new RuntimeException("No registered solver for class " + tcls);
		}
		return s;
	}
Retrieve the registered solver for a given subclass of {@link PatternExpression}

@param tcls the subclass to solve
@return the registered solver
Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/app/plugin/assembler/sleigh/expr/RecursiveDescentSolver.java