<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (11.0.12) on Wed Aug 18 10:34:26 PDT 2021 -->
<title>IcebergSqlExtensionsBaseVisitor</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="dc.created" content="2021-08-18">
<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>
