public static List<String> parse(String name, boolean ignoreLeaderParens) {
		if (StringUtils.isBlank(name)) {
			throw new IllegalArgumentException(
				"Symbol list must contain at least one symbol name!");
		}

		if (skipParsing(name, ignoreLeaderParens)) {
			List<String> list = new ArrayList<>();
			list.add(name);
			return list;
		}
		return naiveParse(name);
	}
Parses a String pathname into its constituent namespace and name components.
The list does not contain the global namespace, which is implied, but then
has each more deeply nested namespace contained in order in the list, followed
by the trailing name.
@param name The input String to be parsed.
@param ignoreLeaderParens true signals to ignore any string that starts with a '(' char.  
       This is useful to work around some problem characters.
@return {@literal List<String>} containing the sequence of namespaces and trailing name.
Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/app/util/SymbolPathParser.java