public static boolean equivalentVariableArrays(Variable[] vars1, Variable[] vars2) {
		if (vars1 == vars2) {
			return true;
		}
		if (vars1 == null || vars2 == null) {
			return false;
		}

		int length = vars1.length;
		if (vars2.length != length) {
			return false;
		}

		for (int i = 0; i < length; i++) {
			if (!(vars1[i] == null ? vars2[i] == null : equivalentVariables(vars1[i], vars2[i]))) {
				return false;
			}
		}

		return true;
	}
Find the structure data type which corresponds to the specified function's class namespace
within the function's program.

The preferred structure will utilize a namespace-based category path, however,
the match criteria can be fuzzy and relies primarily on the class name.
A properly named class structure must reside within a category whose trailing 
path either matches the class namespace or the class-parent's namespace.  
Preference is given to it residing within the class-parent's namespace.

@param func the function.
@return existing structure whose name matches the specified function's class namespace
or null if not found.
Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/program/model/listing/VariableUtilities.java