/*
 *  file: {{ file_name }}
 *
 *  This file was generated by sourcegen. It will be re-generated by the
 *  Cantera build process. Do not manually edit.
 *
 *  Warning: This module is an experimental part of the Cantera API and
 *      may be changed or removed without notice.
 */

// This file is part of Cantera. See License.txt in the top-level directory or
// at https://cantera.org/license.txt for license and copyright information.

using Cantera.Interop;

namespace Cantera;

public partial class {{ wrapper_class_name }} : IDisposable
{
    partial void ExtraDispose();

    readonly {{ handle_class_name }} _handle;

    #pragma warning disable CS1591
    {% for property in cs_properties %}
    {{ property | indent(4) }}
    {% endfor %}
    #pragma warning restore CS1591

    /// <summary>
    /// Frees the underlying resources used by the
    /// native Cantera library for this instance.
    /// </summary>
    public void Dispose()
    {
        _handle.Dispose();
        ExtraDispose();
    }
}
