<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc -->
<title>IcebergSqlExtensionsBaseVisitor</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../../../jquery/jquery-ui.css" title="Style">
<script type="text/javascript" src="../../../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../../../jquery/jszip/dist/jszip.min.js"></script>
<script type="text/javascript" src="../../../../../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
<!--[if IE]>
<script type="text/javascript" src="../../../../../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
<![endif]-->
<script type="text/javascript" src="../../../../../../../jquery/jquery-3.5.1.js"></script>
<script type="text/javascript" src="../../../../../../../jquery/jquery-ui.js"></script>
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="IcebergSqlExtensionsBaseVisitor";
        }
    }
    catch(err) {
    }
//-->
var data = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":10,"i19":10,"i20":10,"i21":10,"i22":10,"i23":10,"i24":10,"i25":10,"i26":10,"i27":10,"i28":10,"i29":10,"i30":10,"i31":10,"i32":10,"i33":10,"i34":10,"i35":10,"i36":10,"i37":10,"i38":10,"i39":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
var pathtoroot = "../../../../../../../";
var useModuleDirectories = true;
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<header role="banner">
<nav role="navigation">
<div class="fixedNav">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a id="navbar.top">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.top.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<ul class="navListSearch">
<li><label for="search">SEARCH:</label>
<input type="text" id="search" value="search" disabled="disabled">
<input type="reset" id="reset" value="reset" disabled="disabled">
</li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a id="skip.navbar.top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
</div>
<div class="navPadding">&nbsp;</div>
<script type="text/javascript"><!--
$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
//-->
</script>
</nav>
</header>
<!-- ======== START OF CLASS DATA ======== -->
<main role="main">
<div class="header">
<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">org.apache.spark.sql.catalyst.parser.extensions</a></div>
<h2 title="Class IcebergSqlExtensionsBaseVisitor" class="title">Class IcebergSqlExtensionsBaseVisitor&lt;T&gt;</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li>org.antlr.v4.runtime.tree.AbstractParseTreeVisitor&lt;T&gt;</li>
<li>
<ul class="inheritance">
<li>org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsBaseVisitor&lt;T&gt;</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt><span class="paramLabel">Type Parameters:</span></dt>
<dd><code>T</code> - The return type of the visit operation. Use <code>Void</code> for
 operations with no return type.</dd>
</dl>
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><code>org.antlr.v4.runtime.tree.ParseTreeVisitor&lt;T&gt;</code>, <code><a href="IcebergSqlExtensionsVisitor.html" title="interface in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsVisitor</a>&lt;T&gt;</code></dd>
</dl>
<hr>
<pre>public class <span class="typeNameLabel">IcebergSqlExtensionsBaseVisitor&lt;T&gt;</span>
extends org.antlr.v4.runtime.tree.AbstractParseTreeVisitor&lt;T&gt;
implements <a href="IcebergSqlExtensionsVisitor.html" title="interface in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsVisitor</a>&lt;T&gt;</pre>
<div class="block">This class provides an empty implementation of <a href="IcebergSqlExtensionsVisitor.html" title="interface in org.apache.spark.sql.catalyst.parser.extensions"><code>IcebergSqlExtensionsVisitor</code></a>,
 which can be extended to create a visitor which only needs to handle a subset
 of the available methods.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="constructor.summary">
<!--   -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Constructor</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr class="altColor">
<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E()">IcebergSqlExtensionsBaseVisitor</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</table>
</li>
</ul>
</section>
<!-- ========== METHOD SUMMARY =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code><a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#visitAddPartitionField(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.AddPartitionFieldContext)">visitAddPartitionField</a></span>&#8203;(<a href="IcebergSqlExtensionsParser.AddPartitionFieldContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.AddPartitionFieldContext</a>&nbsp;ctx)</code></th>
<td class="colLast">
<div class="block">Visit a parse tree produced by the <code>addPartitionField</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#statement()"><code>IcebergSqlExtensionsParser.statement()</code></a>.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code><a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#visitApplyTransform(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.ApplyTransformContext)">visitApplyTransform</a></span>&#8203;(<a href="IcebergSqlExtensionsParser.ApplyTransformContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.ApplyTransformContext</a>&nbsp;ctx)</code></th>
<td class="colLast">
<div class="block">Visit a parse tree produced by the <code>applyTransform</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#transform()"><code>IcebergSqlExtensionsParser.transform()</code></a>.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code><a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#visitBigDecimalLiteral(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.BigDecimalLiteralContext)">visitBigDecimalLiteral</a></span>&#8203;(<a href="IcebergSqlExtensionsParser.BigDecimalLiteralContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.BigDecimalLiteralContext</a>&nbsp;ctx)</code></th>
<td class="colLast">
<div class="block">Visit a parse tree produced by the <code>bigDecimalLiteral</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#number()"><code>IcebergSqlExtensionsParser.number()</code></a>.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code><a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#visitBigIntLiteral(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.BigIntLiteralContext)">visitBigIntLiteral</a></span>&#8203;(<a href="IcebergSqlExtensionsParser.BigIntLiteralContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.BigIntLiteralContext</a>&nbsp;ctx)</code></th>
<td class="colLast">
<div class="block">Visit a parse tree produced by the <code>bigIntLiteral</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#number()"><code>IcebergSqlExtensionsParser.number()</code></a>.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code><a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#visitBooleanLiteral(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.BooleanLiteralContext)">visitBooleanLiteral</a></span>&#8203;(<a href="IcebergSqlExtensionsParser.BooleanLiteralContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.BooleanLiteralContext</a>&nbsp;ctx)</code></th>
<td class="colLast">
<div class="block">Visit a parse tree produced by the <code>booleanLiteral</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#constant()"><code>IcebergSqlExtensionsParser.constant()</code></a>.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code><a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#visitBooleanValue(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.BooleanValueContext)">visitBooleanValue</a></span>&#8203;(<a href="IcebergSqlExtensionsParser.BooleanValueContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.BooleanValueContext</a>&nbsp;ctx)</code></th>
<td class="colLast">
<div class="block">Visit a parse tree produced by <a href="IcebergSqlExtensionsParser.html#booleanValue()"><code>IcebergSqlExtensionsParser.booleanValue()</code></a>.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code><a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#visitCall(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.CallContext)">visitCall</a></span>&#8203;(<a href="IcebergSqlExtensionsParser.CallContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.CallContext</a>&nbsp;ctx)</code></th>
<td class="colLast">
<div class="block">Visit a parse tree produced by the <code>call</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#statement()"><code>IcebergSqlExtensionsParser.statement()</code></a>.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code><a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#visitDecimalLiteral(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.DecimalLiteralContext)">visitDecimalLiteral</a></span>&#8203;(<a href="IcebergSqlExtensionsParser.DecimalLiteralContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.DecimalLiteralContext</a>&nbsp;ctx)</code></th>
<td class="colLast">
<div class="block">Visit a parse tree produced by the <code>decimalLiteral</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#number()"><code>IcebergSqlExtensionsParser.number()</code></a>.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code><a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#visitDoubleLiteral(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.DoubleLiteralContext)">visitDoubleLiteral</a></span>&#8203;(<a href="IcebergSqlExtensionsParser.DoubleLiteralContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.DoubleLiteralContext</a>&nbsp;ctx)</code></th>
<td class="colLast">
<div class="block">Visit a parse tree produced by the <code>doubleLiteral</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#number()"><code>IcebergSqlExtensionsParser.number()</code></a>.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code><a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#visitDropIdentifierFields(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.DropIdentifierFieldsContext)">visitDropIdentifierFields</a></span>&#8203;(<a href="IcebergSqlExtensionsParser.DropIdentifierFieldsContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.DropIdentifierFieldsContext</a>&nbsp;ctx)</code></th>
<td class="colLast">
<div class="block">Visit a parse tree produced by the <code>dropIdentifierFields</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#statement()"><code>IcebergSqlExtensionsParser.statement()</code></a>.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code><a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#visitDropPartitionField(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.DropPartitionFieldContext)">visitDropPartitionField</a></span>&#8203;(<a href="IcebergSqlExtensionsParser.DropPartitionFieldContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.DropPartitionFieldContext</a>&nbsp;ctx)</code></th>
<td class="colLast">
<div class="block">Visit a parse tree produced by the <code>dropPartitionField</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#statement()"><code>IcebergSqlExtensionsParser.statement()</code></a>.</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code><a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#visitExponentLiteral(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.ExponentLiteralContext)">visitExponentLiteral</a></span>&#8203;(<a href="IcebergSqlExtensionsParser.ExponentLiteralContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.ExponentLiteralContext</a>&nbsp;ctx)</code></th>
<td class="colLast">
<div class="block">Visit a parse tree produced by the <code>exponentLiteral</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#number()"><code>IcebergSqlExtensionsParser.number()</code></a>.</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code><a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#visitExpression(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.ExpressionContext)">visitExpression</a></span>&#8203;(<a href="IcebergSqlExtensionsParser.ExpressionContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.ExpressionContext</a>&nbsp;ctx)</code></th>
<td class="colLast">
<div class="block">Visit a parse tree produced by <a href="IcebergSqlExtensionsParser.html#expression()"><code>IcebergSqlExtensionsParser.expression()</code></a>.</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code><a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#visitFieldList(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.FieldListContext)">visitFieldList</a></span>&#8203;(<a href="IcebergSqlExtensionsParser.FieldListContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.FieldListContext</a>&nbsp;ctx)</code></th>
<td class="colLast">
<div class="block">Visit a parse tree produced by <a href="IcebergSqlExtensionsParser.html#fieldList()"><code>IcebergSqlExtensionsParser.fieldList()</code></a>.</div>
</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code><a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#visitFloatLiteral(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.FloatLiteralContext)">visitFloatLiteral</a></span>&#8203;(<a href="IcebergSqlExtensionsParser.FloatLiteralContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.FloatLiteralContext</a>&nbsp;ctx)</code></th>
<td class="colLast">
<div class="block">Visit a parse tree produced by the <code>floatLiteral</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#number()"><code>IcebergSqlExtensionsParser.number()</code></a>.</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code><a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#visitIdentityTransform(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.IdentityTransformContext)">visitIdentityTransform</a></span>&#8203;(<a href="IcebergSqlExtensionsParser.IdentityTransformContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.IdentityTransformContext</a>&nbsp;ctx)</code></th>
<td class="colLast">
<div class="block">Visit a parse tree produced by the <code>identityTransform</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#transform()"><code>IcebergSqlExtensionsParser.transform()</code></a>.</div>
</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code><a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#visitIntegerLiteral(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.IntegerLiteralContext)">visitIntegerLiteral</a></span>&#8203;(<a href="IcebergSqlExtensionsParser.IntegerLiteralContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.IntegerLiteralContext</a>&nbsp;ctx)</code></th>
<td class="colLast">
<div class="block">Visit a parse tree produced by the <code>integerLiteral</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#number()"><code>IcebergSqlExtensionsParser.number()</code></a>.</div>
</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code><a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#visitMultipartIdentifier(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.MultipartIdentifierContext)">visitMultipartIdentifier</a></span>&#8203;(<a href="IcebergSqlExtensionsParser.MultipartIdentifierContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.MultipartIdentifierContext</a>&nbsp;ctx)</code></th>
<td class="colLast">
<div class="block">Visit a parse tree produced by <a href="IcebergSqlExtensionsParser.html#multipartIdentifier()"><code>IcebergSqlExtensionsParser.multipartIdentifier()</code></a>.</div>
</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code><a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#visitNamedArgument(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.NamedArgumentContext)">visitNamedArgument</a></span>&#8203;(<a href="IcebergSqlExtensionsParser.NamedArgumentContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.NamedArgumentContext</a>&nbsp;ctx)</code></th>
<td class="colLast">
<div class="block">Visit a parse tree produced by the <code>namedArgument</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#callArgument()"><code>IcebergSqlExtensionsParser.callArgument()</code></a>.</div>
</td>
</tr>
<tr id="i19" class="rowColor">
<td class="colFirst"><code><a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#visitNonReserved(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.NonReservedContext)">visitNonReserved</a></span>&#8203;(<a href="IcebergSqlExtensionsParser.NonReservedContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.NonReservedContext</a>&nbsp;ctx)</code></th>
<td class="colLast">
<div class="block">Visit a parse tree produced by <a href="IcebergSqlExtensionsParser.html#nonReserved()"><code>IcebergSqlExtensionsParser.nonReserved()</code></a>.</div>
</td>
</tr>
<tr id="i20" class="altColor">
<td class="colFirst"><code><a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#visitNumericLiteral(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.NumericLiteralContext)">visitNumericLiteral</a></span>&#8203;(<a href="IcebergSqlExtensionsParser.NumericLiteralContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.NumericLiteralContext</a>&nbsp;ctx)</code></th>
<td class="colLast">
<div class="block">Visit a parse tree produced by the <code>numericLiteral</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#constant()"><code>IcebergSqlExtensionsParser.constant()</code></a>.</div>
</td>
</tr>
<tr id="i21" class="rowColor">
<td class="colFirst"><code><a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#visitOrder(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.OrderContext)">visitOrder</a></span>&#8203;(<a href="IcebergSqlExtensionsParser.OrderContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.OrderContext</a>&nbsp;ctx)</code></th>
<td class="colLast">
<div class="block">Visit a parse tree produced by <a href="IcebergSqlExtensionsParser.html#order()"><code>IcebergSqlExtensionsParser.order()</code></a>.</div>
</td>
</tr>
<tr id="i22" class="altColor">
<td class="colFirst"><code><a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#visitOrderField(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.OrderFieldContext)">visitOrderField</a></span>&#8203;(<a href="IcebergSqlExtensionsParser.OrderFieldContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.OrderFieldContext</a>&nbsp;ctx)</code></th>
<td class="colLast">
<div class="block">Visit a parse tree produced by <a href="IcebergSqlExtensionsParser.html#orderField()"><code>IcebergSqlExtensionsParser.orderField()</code></a>.</div>
</td>
</tr>
<tr id="i23" class="rowColor">
<td class="colFirst"><code><a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#visitPositionalArgument(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.PositionalArgumentContext)">visitPositionalArgument</a></span>&#8203;(<a href="IcebergSqlExtensionsParser.PositionalArgumentContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.PositionalArgumentContext</a>&nbsp;ctx)</code></th>
<td class="colLast">
<div class="block">Visit a parse tree produced by the <code>positionalArgument</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#callArgument()"><code>IcebergSqlExtensionsParser.callArgument()</code></a>.</div>
</td>
</tr>
<tr id="i24" class="altColor">
<td class="colFirst"><code><a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#visitQuotedIdentifier(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.QuotedIdentifierContext)">visitQuotedIdentifier</a></span>&#8203;(<a href="IcebergSqlExtensionsParser.QuotedIdentifierContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.QuotedIdentifierContext</a>&nbsp;ctx)</code></th>
<td class="colLast">
<div class="block">Visit a parse tree produced by <a href="IcebergSqlExtensionsParser.html#quotedIdentifier()"><code>IcebergSqlExtensionsParser.quotedIdentifier()</code></a>.</div>
</td>
</tr>
<tr id="i25" class="rowColor">
<td class="colFirst"><code><a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#visitQuotedIdentifierAlternative(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.QuotedIdentifierAlternativeContext)">visitQuotedIdentifierAlternative</a></span>&#8203;(<a href="IcebergSqlExtensionsParser.QuotedIdentifierAlternativeContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.QuotedIdentifierAlternativeContext</a>&nbsp;ctx)</code></th>
<td class="colLast">
<div class="block">Visit a parse tree produced by the <code>quotedIdentifierAlternative</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#identifier()"><code>IcebergSqlExtensionsParser.identifier()</code></a>.</div>
</td>
</tr>
<tr id="i26" class="altColor">
<td class="colFirst"><code><a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#visitReplacePartitionField(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.ReplacePartitionFieldContext)">visitReplacePartitionField</a></span>&#8203;(<a href="IcebergSqlExtensionsParser.ReplacePartitionFieldContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.ReplacePartitionFieldContext</a>&nbsp;ctx)</code></th>
<td class="colLast">
<div class="block">Visit a parse tree produced by the <code>replacePartitionField</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#statement()"><code>IcebergSqlExtensionsParser.statement()</code></a>.</div>
</td>
</tr>
<tr id="i27" class="rowColor">
<td class="colFirst"><code><a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#visitSetIdentifierFields(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.SetIdentifierFieldsContext)">visitSetIdentifierFields</a></span>&#8203;(<a href="IcebergSqlExtensionsParser.SetIdentifierFieldsContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.SetIdentifierFieldsContext</a>&nbsp;ctx)</code></th>
<td class="colLast">
<div class="block">Visit a parse tree produced by the <code>setIdentifierFields</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#statement()"><code>IcebergSqlExtensionsParser.statement()</code></a>.</div>
</td>
</tr>
<tr id="i28" class="altColor">
<td class="colFirst"><code><a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#visitSetWriteDistributionAndOrdering(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.SetWriteDistributionAndOrderingContext)">visitSetWriteDistributionAndOrdering</a></span>&#8203;(<a href="IcebergSqlExtensionsParser.SetWriteDistributionAndOrderingContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.SetWriteDistributionAndOrderingContext</a>&nbsp;ctx)</code></th>
<td class="colLast">
<div class="block">Visit a parse tree produced by the <code>setWriteDistributionAndOrdering</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#statement()"><code>IcebergSqlExtensionsParser.statement()</code></a>.</div>
</td>
</tr>
<tr id="i29" class="rowColor">
<td class="colFirst"><code><a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#visitSingleStatement(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.SingleStatementContext)">visitSingleStatement</a></span>&#8203;(<a href="IcebergSqlExtensionsParser.SingleStatementContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.SingleStatementContext</a>&nbsp;ctx)</code></th>
<td class="colLast">
<div class="block">Visit a parse tree produced by <a href="IcebergSqlExtensionsParser.html#singleStatement()"><code>IcebergSqlExtensionsParser.singleStatement()</code></a>.</div>
</td>
</tr>
<tr id="i30" class="altColor">
<td class="colFirst"><code><a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#visitSmallIntLiteral(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.SmallIntLiteralContext)">visitSmallIntLiteral</a></span>&#8203;(<a href="IcebergSqlExtensionsParser.SmallIntLiteralContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.SmallIntLiteralContext</a>&nbsp;ctx)</code></th>
<td class="colLast">
<div class="block">Visit a parse tree produced by the <code>smallIntLiteral</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#number()"><code>IcebergSqlExtensionsParser.number()</code></a>.</div>
</td>
</tr>
<tr id="i31" class="rowColor">
<td class="colFirst"><code><a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#visitStringLiteral(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.StringLiteralContext)">visitStringLiteral</a></span>&#8203;(<a href="IcebergSqlExtensionsParser.StringLiteralContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.StringLiteralContext</a>&nbsp;ctx)</code></th>
<td class="colLast">
<div class="block">Visit a parse tree produced by the <code>stringLiteral</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#constant()"><code>IcebergSqlExtensionsParser.constant()</code></a>.</div>
</td>
</tr>
<tr id="i32" class="altColor">
<td class="colFirst"><code><a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#visitStringMap(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.StringMapContext)">visitStringMap</a></span>&#8203;(<a href="IcebergSqlExtensionsParser.StringMapContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.StringMapContext</a>&nbsp;ctx)</code></th>
<td class="colLast">
<div class="block">Visit a parse tree produced by <a href="IcebergSqlExtensionsParser.html#stringMap()"><code>IcebergSqlExtensionsParser.stringMap()</code></a>.</div>
</td>
</tr>
<tr id="i33" class="rowColor">
<td class="colFirst"><code><a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#visitTinyIntLiteral(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.TinyIntLiteralContext)">visitTinyIntLiteral</a></span>&#8203;(<a href="IcebergSqlExtensionsParser.TinyIntLiteralContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.TinyIntLiteralContext</a>&nbsp;ctx)</code></th>
<td class="colLast">
<div class="block">Visit a parse tree produced by the <code>tinyIntLiteral</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#number()"><code>IcebergSqlExtensionsParser.number()</code></a>.</div>
</td>
</tr>
<tr id="i34" class="altColor">
<td class="colFirst"><code><a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#visitTransformArgument(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.TransformArgumentContext)">visitTransformArgument</a></span>&#8203;(<a href="IcebergSqlExtensionsParser.TransformArgumentContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.TransformArgumentContext</a>&nbsp;ctx)</code></th>
<td class="colLast">
<div class="block">Visit a parse tree produced by <a href="IcebergSqlExtensionsParser.html#transformArgument()"><code>IcebergSqlExtensionsParser.transformArgument()</code></a>.</div>
</td>
</tr>
<tr id="i35" class="rowColor">
<td class="colFirst"><code><a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#visitTypeConstructor(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.TypeConstructorContext)">visitTypeConstructor</a></span>&#8203;(<a href="IcebergSqlExtensionsParser.TypeConstructorContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.TypeConstructorContext</a>&nbsp;ctx)</code></th>
<td class="colLast">
<div class="block">Visit a parse tree produced by the <code>typeConstructor</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#constant()"><code>IcebergSqlExtensionsParser.constant()</code></a>.</div>
</td>
</tr>
<tr id="i36" class="altColor">
<td class="colFirst"><code><a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#visitUnquotedIdentifier(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.UnquotedIdentifierContext)">visitUnquotedIdentifier</a></span>&#8203;(<a href="IcebergSqlExtensionsParser.UnquotedIdentifierContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.UnquotedIdentifierContext</a>&nbsp;ctx)</code></th>
<td class="colLast">
<div class="block">Visit a parse tree produced by the <code>unquotedIdentifier</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#identifier()"><code>IcebergSqlExtensionsParser.identifier()</code></a>.</div>
</td>
</tr>
<tr id="i37" class="rowColor">
<td class="colFirst"><code><a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#visitWriteDistributionSpec(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.WriteDistributionSpecContext)">visitWriteDistributionSpec</a></span>&#8203;(<a href="IcebergSqlExtensionsParser.WriteDistributionSpecContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.WriteDistributionSpecContext</a>&nbsp;ctx)</code></th>
<td class="colLast">
<div class="block">Visit a parse tree produced by <a href="IcebergSqlExtensionsParser.html#writeDistributionSpec()"><code>IcebergSqlExtensionsParser.writeDistributionSpec()</code></a>.</div>
</td>
</tr>
<tr id="i38" class="altColor">
<td class="colFirst"><code><a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#visitWriteOrderingSpec(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.WriteOrderingSpecContext)">visitWriteOrderingSpec</a></span>&#8203;(<a href="IcebergSqlExtensionsParser.WriteOrderingSpecContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.WriteOrderingSpecContext</a>&nbsp;ctx)</code></th>
<td class="colLast">
<div class="block">Visit a parse tree produced by <a href="IcebergSqlExtensionsParser.html#writeOrderingSpec()"><code>IcebergSqlExtensionsParser.writeOrderingSpec()</code></a>.</div>
</td>
</tr>
<tr id="i39" class="rowColor">
<td class="colFirst"><code><a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#visitWriteSpec(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.WriteSpecContext)">visitWriteSpec</a></span>&#8203;(<a href="IcebergSqlExtensionsParser.WriteSpecContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.WriteSpecContext</a>&nbsp;ctx)</code></th>
<td class="colLast">
<div class="block">Visit a parse tree produced by <a href="IcebergSqlExtensionsParser.html#writeSpec()"><code>IcebergSqlExtensionsParser.writeSpec()</code></a>.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.org.antlr.v4.runtime.tree.AbstractParseTreeVisitor">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;org.antlr.v4.runtime.tree.AbstractParseTreeVisitor</h3>
<code>aggregateResult, defaultResult, shouldVisitNextChild, visit, visitChildren, visitErrorNode, visitTerminal</code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.Object</h3>
<code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.org.antlr.v4.runtime.tree.ParseTreeVisitor">
<!--   -->
</a>
<h3>Methods inherited from interface&nbsp;org.antlr.v4.runtime.tree.ParseTreeVisitor</h3>
<code>visit, visitChildren, visitErrorNode, visitTerminal</code></li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="constructor.detail">
<!--   -->
</a>
<h3>Constructor Detail</h3>
<a id="&lt;init&gt;()">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>IcebergSqlExtensionsBaseVisitor</h4>
<pre>public&nbsp;IcebergSqlExtensionsBaseVisitor()</pre>
</li>
</ul>
</li>
</ul>
</section>
<!-- ============ METHOD DETAIL ========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a id="visitSingleStatement(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.SingleStatementContext)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>visitSingleStatement</h4>
<pre class="methodSignature">public&nbsp;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&nbsp;visitSingleStatement&#8203;(<a href="IcebergSqlExtensionsParser.SingleStatementContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.SingleStatementContext</a>&nbsp;ctx)</pre>
<div class="block">Visit a parse tree produced by <a href="IcebergSqlExtensionsParser.html#singleStatement()"><code>IcebergSqlExtensionsParser.singleStatement()</code></a>.

 <p>The default implementation returns the result of calling
 <code>AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)</code> on <code>ctx</code>.</p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="IcebergSqlExtensionsVisitor.html#visitSingleStatement(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.SingleStatementContext)">visitSingleStatement</a></code>&nbsp;in interface&nbsp;<code><a href="IcebergSqlExtensionsVisitor.html" title="interface in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsVisitor</a>&lt;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ctx</code> - the parse tree</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the visitor result</dd>
</dl>
</li>
</ul>
<a id="visitCall(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.CallContext)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>visitCall</h4>
<pre class="methodSignature">public&nbsp;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&nbsp;visitCall&#8203;(<a href="IcebergSqlExtensionsParser.CallContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.CallContext</a>&nbsp;ctx)</pre>
<div class="block">Visit a parse tree produced by the <code>call</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#statement()"><code>IcebergSqlExtensionsParser.statement()</code></a>.

 <p>The default implementation returns the result of calling
 <code>AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)</code> on <code>ctx</code>.</p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="IcebergSqlExtensionsVisitor.html#visitCall(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.CallContext)">visitCall</a></code>&nbsp;in interface&nbsp;<code><a href="IcebergSqlExtensionsVisitor.html" title="interface in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsVisitor</a>&lt;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ctx</code> - the parse tree</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the visitor result</dd>
</dl>
</li>
</ul>
<a id="visitAddPartitionField(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.AddPartitionFieldContext)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>visitAddPartitionField</h4>
<pre class="methodSignature">public&nbsp;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&nbsp;visitAddPartitionField&#8203;(<a href="IcebergSqlExtensionsParser.AddPartitionFieldContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.AddPartitionFieldContext</a>&nbsp;ctx)</pre>
<div class="block">Visit a parse tree produced by the <code>addPartitionField</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#statement()"><code>IcebergSqlExtensionsParser.statement()</code></a>.

 <p>The default implementation returns the result of calling
 <code>AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)</code> on <code>ctx</code>.</p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="IcebergSqlExtensionsVisitor.html#visitAddPartitionField(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.AddPartitionFieldContext)">visitAddPartitionField</a></code>&nbsp;in interface&nbsp;<code><a href="IcebergSqlExtensionsVisitor.html" title="interface in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsVisitor</a>&lt;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ctx</code> - the parse tree</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the visitor result</dd>
</dl>
</li>
</ul>
<a id="visitDropPartitionField(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.DropPartitionFieldContext)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>visitDropPartitionField</h4>
<pre class="methodSignature">public&nbsp;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&nbsp;visitDropPartitionField&#8203;(<a href="IcebergSqlExtensionsParser.DropPartitionFieldContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.DropPartitionFieldContext</a>&nbsp;ctx)</pre>
<div class="block">Visit a parse tree produced by the <code>dropPartitionField</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#statement()"><code>IcebergSqlExtensionsParser.statement()</code></a>.

 <p>The default implementation returns the result of calling
 <code>AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)</code> on <code>ctx</code>.</p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="IcebergSqlExtensionsVisitor.html#visitDropPartitionField(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.DropPartitionFieldContext)">visitDropPartitionField</a></code>&nbsp;in interface&nbsp;<code><a href="IcebergSqlExtensionsVisitor.html" title="interface in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsVisitor</a>&lt;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ctx</code> - the parse tree</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the visitor result</dd>
</dl>
</li>
</ul>
<a id="visitReplacePartitionField(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.ReplacePartitionFieldContext)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>visitReplacePartitionField</h4>
<pre class="methodSignature">public&nbsp;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&nbsp;visitReplacePartitionField&#8203;(<a href="IcebergSqlExtensionsParser.ReplacePartitionFieldContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.ReplacePartitionFieldContext</a>&nbsp;ctx)</pre>
<div class="block">Visit a parse tree produced by the <code>replacePartitionField</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#statement()"><code>IcebergSqlExtensionsParser.statement()</code></a>.

 <p>The default implementation returns the result of calling
 <code>AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)</code> on <code>ctx</code>.</p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="IcebergSqlExtensionsVisitor.html#visitReplacePartitionField(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.ReplacePartitionFieldContext)">visitReplacePartitionField</a></code>&nbsp;in interface&nbsp;<code><a href="IcebergSqlExtensionsVisitor.html" title="interface in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsVisitor</a>&lt;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ctx</code> - the parse tree</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the visitor result</dd>
</dl>
</li>
</ul>
<a id="visitSetWriteDistributionAndOrdering(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.SetWriteDistributionAndOrderingContext)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>visitSetWriteDistributionAndOrdering</h4>
<pre class="methodSignature">public&nbsp;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&nbsp;visitSetWriteDistributionAndOrdering&#8203;(<a href="IcebergSqlExtensionsParser.SetWriteDistributionAndOrderingContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.SetWriteDistributionAndOrderingContext</a>&nbsp;ctx)</pre>
<div class="block">Visit a parse tree produced by the <code>setWriteDistributionAndOrdering</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#statement()"><code>IcebergSqlExtensionsParser.statement()</code></a>.

 <p>The default implementation returns the result of calling
 <code>AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)</code> on <code>ctx</code>.</p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="IcebergSqlExtensionsVisitor.html#visitSetWriteDistributionAndOrdering(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.SetWriteDistributionAndOrderingContext)">visitSetWriteDistributionAndOrdering</a></code>&nbsp;in interface&nbsp;<code><a href="IcebergSqlExtensionsVisitor.html" title="interface in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsVisitor</a>&lt;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ctx</code> - the parse tree</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the visitor result</dd>
</dl>
</li>
</ul>
<a id="visitSetIdentifierFields(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.SetIdentifierFieldsContext)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>visitSetIdentifierFields</h4>
<pre class="methodSignature">public&nbsp;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&nbsp;visitSetIdentifierFields&#8203;(<a href="IcebergSqlExtensionsParser.SetIdentifierFieldsContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.SetIdentifierFieldsContext</a>&nbsp;ctx)</pre>
<div class="block">Visit a parse tree produced by the <code>setIdentifierFields</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#statement()"><code>IcebergSqlExtensionsParser.statement()</code></a>.

 <p>The default implementation returns the result of calling
 <code>AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)</code> on <code>ctx</code>.</p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="IcebergSqlExtensionsVisitor.html#visitSetIdentifierFields(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.SetIdentifierFieldsContext)">visitSetIdentifierFields</a></code>&nbsp;in interface&nbsp;<code><a href="IcebergSqlExtensionsVisitor.html" title="interface in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsVisitor</a>&lt;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ctx</code> - the parse tree</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the visitor result</dd>
</dl>
</li>
</ul>
<a id="visitDropIdentifierFields(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.DropIdentifierFieldsContext)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>visitDropIdentifierFields</h4>
<pre class="methodSignature">public&nbsp;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&nbsp;visitDropIdentifierFields&#8203;(<a href="IcebergSqlExtensionsParser.DropIdentifierFieldsContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.DropIdentifierFieldsContext</a>&nbsp;ctx)</pre>
<div class="block">Visit a parse tree produced by the <code>dropIdentifierFields</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#statement()"><code>IcebergSqlExtensionsParser.statement()</code></a>.

 <p>The default implementation returns the result of calling
 <code>AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)</code> on <code>ctx</code>.</p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="IcebergSqlExtensionsVisitor.html#visitDropIdentifierFields(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.DropIdentifierFieldsContext)">visitDropIdentifierFields</a></code>&nbsp;in interface&nbsp;<code><a href="IcebergSqlExtensionsVisitor.html" title="interface in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsVisitor</a>&lt;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ctx</code> - the parse tree</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the visitor result</dd>
</dl>
</li>
</ul>
<a id="visitWriteSpec(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.WriteSpecContext)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>visitWriteSpec</h4>
<pre class="methodSignature">public&nbsp;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&nbsp;visitWriteSpec&#8203;(<a href="IcebergSqlExtensionsParser.WriteSpecContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.WriteSpecContext</a>&nbsp;ctx)</pre>
<div class="block">Visit a parse tree produced by <a href="IcebergSqlExtensionsParser.html#writeSpec()"><code>IcebergSqlExtensionsParser.writeSpec()</code></a>.

 <p>The default implementation returns the result of calling
 <code>AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)</code> on <code>ctx</code>.</p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="IcebergSqlExtensionsVisitor.html#visitWriteSpec(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.WriteSpecContext)">visitWriteSpec</a></code>&nbsp;in interface&nbsp;<code><a href="IcebergSqlExtensionsVisitor.html" title="interface in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsVisitor</a>&lt;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ctx</code> - the parse tree</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the visitor result</dd>
</dl>
</li>
</ul>
<a id="visitWriteDistributionSpec(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.WriteDistributionSpecContext)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>visitWriteDistributionSpec</h4>
<pre class="methodSignature">public&nbsp;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&nbsp;visitWriteDistributionSpec&#8203;(<a href="IcebergSqlExtensionsParser.WriteDistributionSpecContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.WriteDistributionSpecContext</a>&nbsp;ctx)</pre>
<div class="block">Visit a parse tree produced by <a href="IcebergSqlExtensionsParser.html#writeDistributionSpec()"><code>IcebergSqlExtensionsParser.writeDistributionSpec()</code></a>.

 <p>The default implementation returns the result of calling
 <code>AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)</code> on <code>ctx</code>.</p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="IcebergSqlExtensionsVisitor.html#visitWriteDistributionSpec(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.WriteDistributionSpecContext)">visitWriteDistributionSpec</a></code>&nbsp;in interface&nbsp;<code><a href="IcebergSqlExtensionsVisitor.html" title="interface in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsVisitor</a>&lt;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ctx</code> - the parse tree</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the visitor result</dd>
</dl>
</li>
</ul>
<a id="visitWriteOrderingSpec(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.WriteOrderingSpecContext)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>visitWriteOrderingSpec</h4>
<pre class="methodSignature">public&nbsp;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&nbsp;visitWriteOrderingSpec&#8203;(<a href="IcebergSqlExtensionsParser.WriteOrderingSpecContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.WriteOrderingSpecContext</a>&nbsp;ctx)</pre>
<div class="block">Visit a parse tree produced by <a href="IcebergSqlExtensionsParser.html#writeOrderingSpec()"><code>IcebergSqlExtensionsParser.writeOrderingSpec()</code></a>.

 <p>The default implementation returns the result of calling
 <code>AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)</code> on <code>ctx</code>.</p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="IcebergSqlExtensionsVisitor.html#visitWriteOrderingSpec(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.WriteOrderingSpecContext)">visitWriteOrderingSpec</a></code>&nbsp;in interface&nbsp;<code><a href="IcebergSqlExtensionsVisitor.html" title="interface in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsVisitor</a>&lt;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ctx</code> - the parse tree</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the visitor result</dd>
</dl>
</li>
</ul>
<a id="visitPositionalArgument(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.PositionalArgumentContext)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>visitPositionalArgument</h4>
<pre class="methodSignature">public&nbsp;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&nbsp;visitPositionalArgument&#8203;(<a href="IcebergSqlExtensionsParser.PositionalArgumentContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.PositionalArgumentContext</a>&nbsp;ctx)</pre>
<div class="block">Visit a parse tree produced by the <code>positionalArgument</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#callArgument()"><code>IcebergSqlExtensionsParser.callArgument()</code></a>.

 <p>The default implementation returns the result of calling
 <code>AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)</code> on <code>ctx</code>.</p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="IcebergSqlExtensionsVisitor.html#visitPositionalArgument(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.PositionalArgumentContext)">visitPositionalArgument</a></code>&nbsp;in interface&nbsp;<code><a href="IcebergSqlExtensionsVisitor.html" title="interface in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsVisitor</a>&lt;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ctx</code> - the parse tree</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the visitor result</dd>
</dl>
</li>
</ul>
<a id="visitNamedArgument(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.NamedArgumentContext)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>visitNamedArgument</h4>
<pre class="methodSignature">public&nbsp;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&nbsp;visitNamedArgument&#8203;(<a href="IcebergSqlExtensionsParser.NamedArgumentContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.NamedArgumentContext</a>&nbsp;ctx)</pre>
<div class="block">Visit a parse tree produced by the <code>namedArgument</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#callArgument()"><code>IcebergSqlExtensionsParser.callArgument()</code></a>.

 <p>The default implementation returns the result of calling
 <code>AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)</code> on <code>ctx</code>.</p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="IcebergSqlExtensionsVisitor.html#visitNamedArgument(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.NamedArgumentContext)">visitNamedArgument</a></code>&nbsp;in interface&nbsp;<code><a href="IcebergSqlExtensionsVisitor.html" title="interface in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsVisitor</a>&lt;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ctx</code> - the parse tree</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the visitor result</dd>
</dl>
</li>
</ul>
<a id="visitOrder(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.OrderContext)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>visitOrder</h4>
<pre class="methodSignature">public&nbsp;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&nbsp;visitOrder&#8203;(<a href="IcebergSqlExtensionsParser.OrderContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.OrderContext</a>&nbsp;ctx)</pre>
<div class="block">Visit a parse tree produced by <a href="IcebergSqlExtensionsParser.html#order()"><code>IcebergSqlExtensionsParser.order()</code></a>.

 <p>The default implementation returns the result of calling
 <code>AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)</code> on <code>ctx</code>.</p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="IcebergSqlExtensionsVisitor.html#visitOrder(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.OrderContext)">visitOrder</a></code>&nbsp;in interface&nbsp;<code><a href="IcebergSqlExtensionsVisitor.html" title="interface in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsVisitor</a>&lt;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ctx</code> - the parse tree</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the visitor result</dd>
</dl>
</li>
</ul>
<a id="visitOrderField(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.OrderFieldContext)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>visitOrderField</h4>
<pre class="methodSignature">public&nbsp;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&nbsp;visitOrderField&#8203;(<a href="IcebergSqlExtensionsParser.OrderFieldContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.OrderFieldContext</a>&nbsp;ctx)</pre>
<div class="block">Visit a parse tree produced by <a href="IcebergSqlExtensionsParser.html#orderField()"><code>IcebergSqlExtensionsParser.orderField()</code></a>.

 <p>The default implementation returns the result of calling
 <code>AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)</code> on <code>ctx</code>.</p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="IcebergSqlExtensionsVisitor.html#visitOrderField(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.OrderFieldContext)">visitOrderField</a></code>&nbsp;in interface&nbsp;<code><a href="IcebergSqlExtensionsVisitor.html" title="interface in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsVisitor</a>&lt;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ctx</code> - the parse tree</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the visitor result</dd>
</dl>
</li>
</ul>
<a id="visitIdentityTransform(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.IdentityTransformContext)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>visitIdentityTransform</h4>
<pre class="methodSignature">public&nbsp;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&nbsp;visitIdentityTransform&#8203;(<a href="IcebergSqlExtensionsParser.IdentityTransformContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.IdentityTransformContext</a>&nbsp;ctx)</pre>
<div class="block">Visit a parse tree produced by the <code>identityTransform</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#transform()"><code>IcebergSqlExtensionsParser.transform()</code></a>.

 <p>The default implementation returns the result of calling
 <code>AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)</code> on <code>ctx</code>.</p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="IcebergSqlExtensionsVisitor.html#visitIdentityTransform(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.IdentityTransformContext)">visitIdentityTransform</a></code>&nbsp;in interface&nbsp;<code><a href="IcebergSqlExtensionsVisitor.html" title="interface in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsVisitor</a>&lt;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ctx</code> - the parse tree</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the visitor result</dd>
</dl>
</li>
</ul>
<a id="visitApplyTransform(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.ApplyTransformContext)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>visitApplyTransform</h4>
<pre class="methodSignature">public&nbsp;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&nbsp;visitApplyTransform&#8203;(<a href="IcebergSqlExtensionsParser.ApplyTransformContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.ApplyTransformContext</a>&nbsp;ctx)</pre>
<div class="block">Visit a parse tree produced by the <code>applyTransform</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#transform()"><code>IcebergSqlExtensionsParser.transform()</code></a>.

 <p>The default implementation returns the result of calling
 <code>AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)</code> on <code>ctx</code>.</p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="IcebergSqlExtensionsVisitor.html#visitApplyTransform(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.ApplyTransformContext)">visitApplyTransform</a></code>&nbsp;in interface&nbsp;<code><a href="IcebergSqlExtensionsVisitor.html" title="interface in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsVisitor</a>&lt;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ctx</code> - the parse tree</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the visitor result</dd>
</dl>
</li>
</ul>
<a id="visitTransformArgument(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.TransformArgumentContext)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>visitTransformArgument</h4>
<pre class="methodSignature">public&nbsp;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&nbsp;visitTransformArgument&#8203;(<a href="IcebergSqlExtensionsParser.TransformArgumentContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.TransformArgumentContext</a>&nbsp;ctx)</pre>
<div class="block">Visit a parse tree produced by <a href="IcebergSqlExtensionsParser.html#transformArgument()"><code>IcebergSqlExtensionsParser.transformArgument()</code></a>.

 <p>The default implementation returns the result of calling
 <code>AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)</code> on <code>ctx</code>.</p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="IcebergSqlExtensionsVisitor.html#visitTransformArgument(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.TransformArgumentContext)">visitTransformArgument</a></code>&nbsp;in interface&nbsp;<code><a href="IcebergSqlExtensionsVisitor.html" title="interface in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsVisitor</a>&lt;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ctx</code> - the parse tree</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the visitor result</dd>
</dl>
</li>
</ul>
<a id="visitExpression(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.ExpressionContext)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>visitExpression</h4>
<pre class="methodSignature">public&nbsp;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&nbsp;visitExpression&#8203;(<a href="IcebergSqlExtensionsParser.ExpressionContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.ExpressionContext</a>&nbsp;ctx)</pre>
<div class="block">Visit a parse tree produced by <a href="IcebergSqlExtensionsParser.html#expression()"><code>IcebergSqlExtensionsParser.expression()</code></a>.

 <p>The default implementation returns the result of calling
 <code>AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)</code> on <code>ctx</code>.</p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="IcebergSqlExtensionsVisitor.html#visitExpression(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.ExpressionContext)">visitExpression</a></code>&nbsp;in interface&nbsp;<code><a href="IcebergSqlExtensionsVisitor.html" title="interface in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsVisitor</a>&lt;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ctx</code> - the parse tree</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the visitor result</dd>
</dl>
</li>
</ul>
<a id="visitNumericLiteral(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.NumericLiteralContext)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>visitNumericLiteral</h4>
<pre class="methodSignature">public&nbsp;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&nbsp;visitNumericLiteral&#8203;(<a href="IcebergSqlExtensionsParser.NumericLiteralContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.NumericLiteralContext</a>&nbsp;ctx)</pre>
<div class="block">Visit a parse tree produced by the <code>numericLiteral</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#constant()"><code>IcebergSqlExtensionsParser.constant()</code></a>.

 <p>The default implementation returns the result of calling
 <code>AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)</code> on <code>ctx</code>.</p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="IcebergSqlExtensionsVisitor.html#visitNumericLiteral(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.NumericLiteralContext)">visitNumericLiteral</a></code>&nbsp;in interface&nbsp;<code><a href="IcebergSqlExtensionsVisitor.html" title="interface in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsVisitor</a>&lt;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ctx</code> - the parse tree</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the visitor result</dd>
</dl>
</li>
</ul>
<a id="visitBooleanLiteral(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.BooleanLiteralContext)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>visitBooleanLiteral</h4>
<pre class="methodSignature">public&nbsp;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&nbsp;visitBooleanLiteral&#8203;(<a href="IcebergSqlExtensionsParser.BooleanLiteralContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.BooleanLiteralContext</a>&nbsp;ctx)</pre>
<div class="block">Visit a parse tree produced by the <code>booleanLiteral</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#constant()"><code>IcebergSqlExtensionsParser.constant()</code></a>.

 <p>The default implementation returns the result of calling
 <code>AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)</code> on <code>ctx</code>.</p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="IcebergSqlExtensionsVisitor.html#visitBooleanLiteral(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.BooleanLiteralContext)">visitBooleanLiteral</a></code>&nbsp;in interface&nbsp;<code><a href="IcebergSqlExtensionsVisitor.html" title="interface in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsVisitor</a>&lt;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ctx</code> - the parse tree</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the visitor result</dd>
</dl>
</li>
</ul>
<a id="visitStringLiteral(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.StringLiteralContext)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>visitStringLiteral</h4>
<pre class="methodSignature">public&nbsp;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&nbsp;visitStringLiteral&#8203;(<a href="IcebergSqlExtensionsParser.StringLiteralContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.StringLiteralContext</a>&nbsp;ctx)</pre>
<div class="block">Visit a parse tree produced by the <code>stringLiteral</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#constant()"><code>IcebergSqlExtensionsParser.constant()</code></a>.

 <p>The default implementation returns the result of calling
 <code>AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)</code> on <code>ctx</code>.</p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="IcebergSqlExtensionsVisitor.html#visitStringLiteral(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.StringLiteralContext)">visitStringLiteral</a></code>&nbsp;in interface&nbsp;<code><a href="IcebergSqlExtensionsVisitor.html" title="interface in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsVisitor</a>&lt;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ctx</code> - the parse tree</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the visitor result</dd>
</dl>
</li>
</ul>
<a id="visitTypeConstructor(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.TypeConstructorContext)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>visitTypeConstructor</h4>
<pre class="methodSignature">public&nbsp;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&nbsp;visitTypeConstructor&#8203;(<a href="IcebergSqlExtensionsParser.TypeConstructorContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.TypeConstructorContext</a>&nbsp;ctx)</pre>
<div class="block">Visit a parse tree produced by the <code>typeConstructor</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#constant()"><code>IcebergSqlExtensionsParser.constant()</code></a>.

 <p>The default implementation returns the result of calling
 <code>AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)</code> on <code>ctx</code>.</p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="IcebergSqlExtensionsVisitor.html#visitTypeConstructor(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.TypeConstructorContext)">visitTypeConstructor</a></code>&nbsp;in interface&nbsp;<code><a href="IcebergSqlExtensionsVisitor.html" title="interface in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsVisitor</a>&lt;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ctx</code> - the parse tree</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the visitor result</dd>
</dl>
</li>
</ul>
<a id="visitStringMap(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.StringMapContext)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>visitStringMap</h4>
<pre class="methodSignature">public&nbsp;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&nbsp;visitStringMap&#8203;(<a href="IcebergSqlExtensionsParser.StringMapContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.StringMapContext</a>&nbsp;ctx)</pre>
<div class="block">Visit a parse tree produced by <a href="IcebergSqlExtensionsParser.html#stringMap()"><code>IcebergSqlExtensionsParser.stringMap()</code></a>.

 <p>The default implementation returns the result of calling
 <code>AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)</code> on <code>ctx</code>.</p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="IcebergSqlExtensionsVisitor.html#visitStringMap(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.StringMapContext)">visitStringMap</a></code>&nbsp;in interface&nbsp;<code><a href="IcebergSqlExtensionsVisitor.html" title="interface in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsVisitor</a>&lt;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ctx</code> - the parse tree</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the visitor result</dd>
</dl>
</li>
</ul>
<a id="visitBooleanValue(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.BooleanValueContext)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>visitBooleanValue</h4>
<pre class="methodSignature">public&nbsp;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&nbsp;visitBooleanValue&#8203;(<a href="IcebergSqlExtensionsParser.BooleanValueContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.BooleanValueContext</a>&nbsp;ctx)</pre>
<div class="block">Visit a parse tree produced by <a href="IcebergSqlExtensionsParser.html#booleanValue()"><code>IcebergSqlExtensionsParser.booleanValue()</code></a>.

 <p>The default implementation returns the result of calling
 <code>AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)</code> on <code>ctx</code>.</p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="IcebergSqlExtensionsVisitor.html#visitBooleanValue(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.BooleanValueContext)">visitBooleanValue</a></code>&nbsp;in interface&nbsp;<code><a href="IcebergSqlExtensionsVisitor.html" title="interface in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsVisitor</a>&lt;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ctx</code> - the parse tree</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the visitor result</dd>
</dl>
</li>
</ul>
<a id="visitExponentLiteral(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.ExponentLiteralContext)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>visitExponentLiteral</h4>
<pre class="methodSignature">public&nbsp;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&nbsp;visitExponentLiteral&#8203;(<a href="IcebergSqlExtensionsParser.ExponentLiteralContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.ExponentLiteralContext</a>&nbsp;ctx)</pre>
<div class="block">Visit a parse tree produced by the <code>exponentLiteral</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#number()"><code>IcebergSqlExtensionsParser.number()</code></a>.

 <p>The default implementation returns the result of calling
 <code>AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)</code> on <code>ctx</code>.</p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="IcebergSqlExtensionsVisitor.html#visitExponentLiteral(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.ExponentLiteralContext)">visitExponentLiteral</a></code>&nbsp;in interface&nbsp;<code><a href="IcebergSqlExtensionsVisitor.html" title="interface in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsVisitor</a>&lt;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ctx</code> - the parse tree</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the visitor result</dd>
</dl>
</li>
</ul>
<a id="visitDecimalLiteral(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.DecimalLiteralContext)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>visitDecimalLiteral</h4>
<pre class="methodSignature">public&nbsp;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&nbsp;visitDecimalLiteral&#8203;(<a href="IcebergSqlExtensionsParser.DecimalLiteralContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.DecimalLiteralContext</a>&nbsp;ctx)</pre>
<div class="block">Visit a parse tree produced by the <code>decimalLiteral</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#number()"><code>IcebergSqlExtensionsParser.number()</code></a>.

 <p>The default implementation returns the result of calling
 <code>AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)</code> on <code>ctx</code>.</p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="IcebergSqlExtensionsVisitor.html#visitDecimalLiteral(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.DecimalLiteralContext)">visitDecimalLiteral</a></code>&nbsp;in interface&nbsp;<code><a href="IcebergSqlExtensionsVisitor.html" title="interface in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsVisitor</a>&lt;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ctx</code> - the parse tree</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the visitor result</dd>
</dl>
</li>
</ul>
<a id="visitIntegerLiteral(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.IntegerLiteralContext)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>visitIntegerLiteral</h4>
<pre class="methodSignature">public&nbsp;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&nbsp;visitIntegerLiteral&#8203;(<a href="IcebergSqlExtensionsParser.IntegerLiteralContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.IntegerLiteralContext</a>&nbsp;ctx)</pre>
<div class="block">Visit a parse tree produced by the <code>integerLiteral</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#number()"><code>IcebergSqlExtensionsParser.number()</code></a>.

 <p>The default implementation returns the result of calling
 <code>AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)</code> on <code>ctx</code>.</p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="IcebergSqlExtensionsVisitor.html#visitIntegerLiteral(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.IntegerLiteralContext)">visitIntegerLiteral</a></code>&nbsp;in interface&nbsp;<code><a href="IcebergSqlExtensionsVisitor.html" title="interface in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsVisitor</a>&lt;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ctx</code> - the parse tree</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the visitor result</dd>
</dl>
</li>
</ul>
<a id="visitBigIntLiteral(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.BigIntLiteralContext)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>visitBigIntLiteral</h4>
<pre class="methodSignature">public&nbsp;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&nbsp;visitBigIntLiteral&#8203;(<a href="IcebergSqlExtensionsParser.BigIntLiteralContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.BigIntLiteralContext</a>&nbsp;ctx)</pre>
<div class="block">Visit a parse tree produced by the <code>bigIntLiteral</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#number()"><code>IcebergSqlExtensionsParser.number()</code></a>.

 <p>The default implementation returns the result of calling
 <code>AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)</code> on <code>ctx</code>.</p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="IcebergSqlExtensionsVisitor.html#visitBigIntLiteral(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.BigIntLiteralContext)">visitBigIntLiteral</a></code>&nbsp;in interface&nbsp;<code><a href="IcebergSqlExtensionsVisitor.html" title="interface in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsVisitor</a>&lt;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ctx</code> - the parse tree</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the visitor result</dd>
</dl>
</li>
</ul>
<a id="visitSmallIntLiteral(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.SmallIntLiteralContext)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>visitSmallIntLiteral</h4>
<pre class="methodSignature">public&nbsp;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&nbsp;visitSmallIntLiteral&#8203;(<a href="IcebergSqlExtensionsParser.SmallIntLiteralContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.SmallIntLiteralContext</a>&nbsp;ctx)</pre>
<div class="block">Visit a parse tree produced by the <code>smallIntLiteral</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#number()"><code>IcebergSqlExtensionsParser.number()</code></a>.

 <p>The default implementation returns the result of calling
 <code>AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)</code> on <code>ctx</code>.</p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="IcebergSqlExtensionsVisitor.html#visitSmallIntLiteral(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.SmallIntLiteralContext)">visitSmallIntLiteral</a></code>&nbsp;in interface&nbsp;<code><a href="IcebergSqlExtensionsVisitor.html" title="interface in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsVisitor</a>&lt;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ctx</code> - the parse tree</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the visitor result</dd>
</dl>
</li>
</ul>
<a id="visitTinyIntLiteral(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.TinyIntLiteralContext)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>visitTinyIntLiteral</h4>
<pre class="methodSignature">public&nbsp;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&nbsp;visitTinyIntLiteral&#8203;(<a href="IcebergSqlExtensionsParser.TinyIntLiteralContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.TinyIntLiteralContext</a>&nbsp;ctx)</pre>
<div class="block">Visit a parse tree produced by the <code>tinyIntLiteral</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#number()"><code>IcebergSqlExtensionsParser.number()</code></a>.

 <p>The default implementation returns the result of calling
 <code>AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)</code> on <code>ctx</code>.</p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="IcebergSqlExtensionsVisitor.html#visitTinyIntLiteral(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.TinyIntLiteralContext)">visitTinyIntLiteral</a></code>&nbsp;in interface&nbsp;<code><a href="IcebergSqlExtensionsVisitor.html" title="interface in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsVisitor</a>&lt;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ctx</code> - the parse tree</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the visitor result</dd>
</dl>
</li>
</ul>
<a id="visitDoubleLiteral(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.DoubleLiteralContext)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>visitDoubleLiteral</h4>
<pre class="methodSignature">public&nbsp;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&nbsp;visitDoubleLiteral&#8203;(<a href="IcebergSqlExtensionsParser.DoubleLiteralContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.DoubleLiteralContext</a>&nbsp;ctx)</pre>
<div class="block">Visit a parse tree produced by the <code>doubleLiteral</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#number()"><code>IcebergSqlExtensionsParser.number()</code></a>.

 <p>The default implementation returns the result of calling
 <code>AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)</code> on <code>ctx</code>.</p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="IcebergSqlExtensionsVisitor.html#visitDoubleLiteral(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.DoubleLiteralContext)">visitDoubleLiteral</a></code>&nbsp;in interface&nbsp;<code><a href="IcebergSqlExtensionsVisitor.html" title="interface in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsVisitor</a>&lt;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ctx</code> - the parse tree</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the visitor result</dd>
</dl>
</li>
</ul>
<a id="visitFloatLiteral(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.FloatLiteralContext)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>visitFloatLiteral</h4>
<pre class="methodSignature">public&nbsp;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&nbsp;visitFloatLiteral&#8203;(<a href="IcebergSqlExtensionsParser.FloatLiteralContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.FloatLiteralContext</a>&nbsp;ctx)</pre>
<div class="block">Visit a parse tree produced by the <code>floatLiteral</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#number()"><code>IcebergSqlExtensionsParser.number()</code></a>.

 <p>The default implementation returns the result of calling
 <code>AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)</code> on <code>ctx</code>.</p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="IcebergSqlExtensionsVisitor.html#visitFloatLiteral(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.FloatLiteralContext)">visitFloatLiteral</a></code>&nbsp;in interface&nbsp;<code><a href="IcebergSqlExtensionsVisitor.html" title="interface in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsVisitor</a>&lt;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ctx</code> - the parse tree</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the visitor result</dd>
</dl>
</li>
</ul>
<a id="visitBigDecimalLiteral(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.BigDecimalLiteralContext)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>visitBigDecimalLiteral</h4>
<pre class="methodSignature">public&nbsp;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&nbsp;visitBigDecimalLiteral&#8203;(<a href="IcebergSqlExtensionsParser.BigDecimalLiteralContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.BigDecimalLiteralContext</a>&nbsp;ctx)</pre>
<div class="block">Visit a parse tree produced by the <code>bigDecimalLiteral</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#number()"><code>IcebergSqlExtensionsParser.number()</code></a>.

 <p>The default implementation returns the result of calling
 <code>AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)</code> on <code>ctx</code>.</p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="IcebergSqlExtensionsVisitor.html#visitBigDecimalLiteral(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.BigDecimalLiteralContext)">visitBigDecimalLiteral</a></code>&nbsp;in interface&nbsp;<code><a href="IcebergSqlExtensionsVisitor.html" title="interface in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsVisitor</a>&lt;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ctx</code> - the parse tree</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the visitor result</dd>
</dl>
</li>
</ul>
<a id="visitMultipartIdentifier(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.MultipartIdentifierContext)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>visitMultipartIdentifier</h4>
<pre class="methodSignature">public&nbsp;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&nbsp;visitMultipartIdentifier&#8203;(<a href="IcebergSqlExtensionsParser.MultipartIdentifierContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.MultipartIdentifierContext</a>&nbsp;ctx)</pre>
<div class="block">Visit a parse tree produced by <a href="IcebergSqlExtensionsParser.html#multipartIdentifier()"><code>IcebergSqlExtensionsParser.multipartIdentifier()</code></a>.

 <p>The default implementation returns the result of calling
 <code>AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)</code> on <code>ctx</code>.</p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="IcebergSqlExtensionsVisitor.html#visitMultipartIdentifier(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.MultipartIdentifierContext)">visitMultipartIdentifier</a></code>&nbsp;in interface&nbsp;<code><a href="IcebergSqlExtensionsVisitor.html" title="interface in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsVisitor</a>&lt;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ctx</code> - the parse tree</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the visitor result</dd>
</dl>
</li>
</ul>
<a id="visitUnquotedIdentifier(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.UnquotedIdentifierContext)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>visitUnquotedIdentifier</h4>
<pre class="methodSignature">public&nbsp;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&nbsp;visitUnquotedIdentifier&#8203;(<a href="IcebergSqlExtensionsParser.UnquotedIdentifierContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.UnquotedIdentifierContext</a>&nbsp;ctx)</pre>
<div class="block">Visit a parse tree produced by the <code>unquotedIdentifier</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#identifier()"><code>IcebergSqlExtensionsParser.identifier()</code></a>.

 <p>The default implementation returns the result of calling
 <code>AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)</code> on <code>ctx</code>.</p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="IcebergSqlExtensionsVisitor.html#visitUnquotedIdentifier(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.UnquotedIdentifierContext)">visitUnquotedIdentifier</a></code>&nbsp;in interface&nbsp;<code><a href="IcebergSqlExtensionsVisitor.html" title="interface in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsVisitor</a>&lt;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ctx</code> - the parse tree</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the visitor result</dd>
</dl>
</li>
</ul>
<a id="visitQuotedIdentifierAlternative(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.QuotedIdentifierAlternativeContext)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>visitQuotedIdentifierAlternative</h4>
<pre class="methodSignature">public&nbsp;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&nbsp;visitQuotedIdentifierAlternative&#8203;(<a href="IcebergSqlExtensionsParser.QuotedIdentifierAlternativeContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.QuotedIdentifierAlternativeContext</a>&nbsp;ctx)</pre>
<div class="block">Visit a parse tree produced by the <code>quotedIdentifierAlternative</code>
 labeled alternative in <a href="IcebergSqlExtensionsParser.html#identifier()"><code>IcebergSqlExtensionsParser.identifier()</code></a>.

 <p>The default implementation returns the result of calling
 <code>AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)</code> on <code>ctx</code>.</p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="IcebergSqlExtensionsVisitor.html#visitQuotedIdentifierAlternative(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.QuotedIdentifierAlternativeContext)">visitQuotedIdentifierAlternative</a></code>&nbsp;in interface&nbsp;<code><a href="IcebergSqlExtensionsVisitor.html" title="interface in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsVisitor</a>&lt;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ctx</code> - the parse tree</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the visitor result</dd>
</dl>
</li>
</ul>
<a id="visitQuotedIdentifier(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.QuotedIdentifierContext)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>visitQuotedIdentifier</h4>
<pre class="methodSignature">public&nbsp;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&nbsp;visitQuotedIdentifier&#8203;(<a href="IcebergSqlExtensionsParser.QuotedIdentifierContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.QuotedIdentifierContext</a>&nbsp;ctx)</pre>
<div class="block">Visit a parse tree produced by <a href="IcebergSqlExtensionsParser.html#quotedIdentifier()"><code>IcebergSqlExtensionsParser.quotedIdentifier()</code></a>.

 <p>The default implementation returns the result of calling
 <code>AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)</code> on <code>ctx</code>.</p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="IcebergSqlExtensionsVisitor.html#visitQuotedIdentifier(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.QuotedIdentifierContext)">visitQuotedIdentifier</a></code>&nbsp;in interface&nbsp;<code><a href="IcebergSqlExtensionsVisitor.html" title="interface in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsVisitor</a>&lt;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ctx</code> - the parse tree</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the visitor result</dd>
</dl>
</li>
</ul>
<a id="visitFieldList(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.FieldListContext)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>visitFieldList</h4>
<pre class="methodSignature">public&nbsp;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&nbsp;visitFieldList&#8203;(<a href="IcebergSqlExtensionsParser.FieldListContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.FieldListContext</a>&nbsp;ctx)</pre>
<div class="block">Visit a parse tree produced by <a href="IcebergSqlExtensionsParser.html#fieldList()"><code>IcebergSqlExtensionsParser.fieldList()</code></a>.

 <p>The default implementation returns the result of calling
 <code>AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)</code> on <code>ctx</code>.</p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="IcebergSqlExtensionsVisitor.html#visitFieldList(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.FieldListContext)">visitFieldList</a></code>&nbsp;in interface&nbsp;<code><a href="IcebergSqlExtensionsVisitor.html" title="interface in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsVisitor</a>&lt;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ctx</code> - the parse tree</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the visitor result</dd>
</dl>
</li>
</ul>
<a id="visitNonReserved(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.NonReservedContext)">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>visitNonReserved</h4>
<pre class="methodSignature">public&nbsp;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&nbsp;visitNonReserved&#8203;(<a href="IcebergSqlExtensionsParser.NonReservedContext.html" title="class in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsParser.NonReservedContext</a>&nbsp;ctx)</pre>
<div class="block">Visit a parse tree produced by <a href="IcebergSqlExtensionsParser.html#nonReserved()"><code>IcebergSqlExtensionsParser.nonReserved()</code></a>.

 <p>The default implementation returns the result of calling
 <code>AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)</code> on <code>ctx</code>.</p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="IcebergSqlExtensionsVisitor.html#visitNonReserved(org.apache.spark.sql.catalyst.parser.extensions.IcebergSqlExtensionsParser.NonReservedContext)">visitNonReserved</a></code>&nbsp;in interface&nbsp;<code><a href="IcebergSqlExtensionsVisitor.html" title="interface in org.apache.spark.sql.catalyst.parser.extensions">IcebergSqlExtensionsVisitor</a>&lt;<a href="IcebergSqlExtensionsBaseVisitor.html" title="type parameter in IcebergSqlExtensionsBaseVisitor">T</a>&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ctx</code> - the parse tree</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the visitor result</dd>
</dl>
</li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
</div>
</main>
<!-- ========= END OF CLASS DATA ========= -->
<footer role="contentinfo">
<nav role="navigation">
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a id="navbar.bottom">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.bottom.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a id="skip.navbar.bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</nav>
</footer>
</body>
</html>
