private String tryConvertTable(HtmlDocTree tree, Element el) {
		RstTableBuilder tbl = new RstTableBuilder(this, el);
		ListIterator<? extends DocTree> it = tree.getBody().listIterator();
		while (it.hasNext()) {
			DocTree tag = it.next();
			switch (tag.getKind()) {
				case OTHER:
					if (!(tag instanceof HtmlDocTree)) {
						logError(el, tag, "Unexpected OTHER tag kind");
						return "";
					}
					HtmlDocTree html = (HtmlDocTree) tag;
					switch (html.getHtmlKind()) {
						case TBODY:
						case TFOOT:
						case THEAD:
							tbl.addRowGroup(html);
							break;
						case TR:
							tbl.addRow(html);
							break;
						case CAPTION:
							tbl.addCaption(convertTree(el, html.getBody()));
							break;
						default:
							logError(el, tag,
								"unexpected html tag encountered while parsing table");
							break;
					}
					break;
				case TEXT:
					String body = ((TextTree) tag).getBody();
					if (!body.isBlank()) {
						logWarning(el, tag, "skipping unexpected text in table");
					}
					break;
				default:
					logError(el, tag, "unexpected tag encountered while parsing table");
					return "";
			}
		}
		return tbl.build();
	}
Converts a table {@literal <table>}

@param tree the html
@param el the element
@return the converted table
@throws UnsupportedOperationException if the table contains nested rows
GhidraBuild/BuildFiles/Doclets/src/main/java/ghidra/doclets/typestubs/HtmlConverter.java