<!--
SPDX-FileCopyrightText: The Apache Software Foundation

SPDX-License-Identifier: Apache-2.0
-->

<!DOCTYPE html>
<html lang="en">
<head>
  <title>Arrow.MapArrayBuilder.append_null</title>
  <meta name="viewport" content="width=device-width, initial-scale=1">

  <meta charset="utf-8" />

  
  <meta property="og:type" content="website"/>

  

  
  <meta priority="og:title" content="Arrow.MapArrayBuilder.append_null"/>
  <meta priority="og:description" content="Reference for Arrow.MapArrayBuilder.append_null"/>
  <meta name="twitter:title" content="Arrow.MapArrayBuilder.append_null"/>
  <meta name="twitter:description" content="Reference for Arrow.MapArrayBuilder.append_null"/>


  
  <meta name="twitter:card" content="summary"/>

  
  
  
  

  <link rel="stylesheet" href="style.css" type="text/css" />

  

  
  <script src="urlmap.js"></script>
  
  
  <script src="fzy.js"></script>
  <script src="search.js"></script>
  
  <script src="main.js"></script>

  
</head>

<body>
  <div id="body-wrapper" tabindex="-1">

    <nav class="sidebar devhelp-hidden">
      
      
      <div class="search section">
        <form id="search-form" autocomplete="off">
          <input id="search-input" type="text" name="do-not-autocomplete" placeholder="Click, or press 's' to search" autocomplete="off"/>
        </form>
      </div>
      
      <div class="section namespace">
        <h3><a href="index.html">Arrow</a></h3>
        <p>API Version: 25.0</p>
        
        <p>Library Version: 25.0.0.dev</p>
        
      </div>
      
<div class="section">
  <h5>Type</h5>
  <div class="links">
    <a href="class.MapArrayBuilder.html">MapArrayBuilder</a>
  </div>
</div>
<div class="section">
  <h5>Methods</h5>
  <div class="links">
  
    <a class="method current" href="method.MapArrayBuilder.append_null.html">append_null</a>
  
    <a class="method" href="method.MapArrayBuilder.append_nulls.html">append_nulls</a>
  
    <a class="method" href="method.MapArrayBuilder.append_value.html">append_value</a>
  
    <a class="method" href="method.MapArrayBuilder.append_values.html">append_values</a>
  
    <a class="method" href="method.MapArrayBuilder.get_item_builder.html">get_item_builder</a>
  
    <a class="method" href="method.MapArrayBuilder.get_key_builder.html">get_key_builder</a>
  
    <a class="method" href="method.MapArrayBuilder.get_value_builder.html">get_value_builder</a>
  
  </div>
</div>

      <div class="section generator">
        <p>Generated by <a href="https://gitlab.gnome.org/GNOME/gi-docgen">gi-docgen</a> 2025.3</p>
      </div>
    </nav>

    <button id="btn-to-top" class="hidden"><span class="up-arrow"></span></button>

    
<section id="main" class="content">
  <header>
    <h3>Method</h3>
    <h1><a href="index.html">Arrow</a><span class="sep"></span><a href="class.MapArrayBuilder.html">MapArrayBuilder</a><span class="sep"></span>append_null</h1>
  </header>

  <section>
    <div class="docblock">
      <p><span class="emblem deprecated">deprecated: 3.0.0</span>&nbsp;<span class="emblem available">since: 0.17.0</span></p>
    </div>

    <div class="declaration toggle-wrapper">
      <h4 style="display:flex;" id="declaration">
        Declaration
        <a class="anchor" href="#declaration"></a>
        
        <a class="srclink" title="go to source location" href="https://github.com/apache/arrow/blob/main/c_glib/arrow-glib/array-builder.h#L1771">[src]</a>
        
      </h4>

      <div class="docblock c-decl">
        <pre><code><div class="highlight"><pre><span></span><span class="n">gboolean</span>
<span class="n">garrow_map_array_builder_append_null</span><span class="w"> </span><span class="p">(</span>
<span class="w">  </span><span class="n">GArrowMapArrayBuilder</span><span class="o">*</span><span class="w"> </span><span class="n">builder</span>
<span class="w">  </span><span class="n">GError</span><span class="o">**</span><span class="w"> </span><span class="n">error</span>
<span class="p">)</span>
</pre></div>
</code></pre>
      </div>
    </div>

    <div class="description toggle-wrapper">
      <h4 style="display:flex;" id="description">
        Description
        <a class="anchor" href="#description"></a>
        
      </h4>

      <div class="docblock">
        <p>No description available.</p>
      </div>

      <div class="docblock">
        
        <p>Available since: 0.17.0</p>
        <div class="admonition deprecation">
          <p class="admonition-title">Deprecated since: 3.0.0</p><p>Use <code>garrow_array_builder_append_null()</code> instead.</p></div>
        
        <p>This method is not directly available to language bindings.</p>
        
        
      </div>

      
    </div>

    

    
    <div class="return-value toggle-wrapper">
      <h4 id="return-value">
        Return value
        <a href="#return-value" class="anchor"></a>
      </h4>

      <div class="docblock">
        <div class="returns">
          <div class="arg-description">
            <p><em>Type:</em>&nbsp;<code>gboolean</code></p>
            <p><code>TRUE</code> on success, <code>FALSE</code> if there was an&nbsp;error.</p>
          </div>
          <div>
            <table>
            
            
            
            
            
            
            </table>
          </div>
        </div>
      </div>
    </div>
    

  </section>
</section>


    

    <section id="search" class="content hidden"></section>

    <footer>
    
    </footer>
  </div>
</body>
</html>