<html devsite="true">
  <head>
    <title>ContainerOfNamed</title>
{% setvar book_path %}/reference/dokkatest/_book.yaml{% endsetvar %}
{% include "_shared/_reference-head-tags.html" %}
  </head>
  <body>
    <div id="metadata-info-block"></div>
    <h1>ContainerOfNamed</h1>
    <p>
      <pre>public class <a href="/reference/dokkatest/companionStatic/ContainerOfNamed.html">ContainerOfNamed</a></pre>
    </p>
    <hr>
    <h2>Summary</h2>
    <div class="devsite-table-wrapper">
      <table class="responsive">
        <colgroup>
          <col width="40%">
          <col>
        </colgroup>
        <thead>
          <tr>
            <th colspan="100%"><h3>Nested types</h3></th>
          </tr>
        </thead>
        <tbody class="list">
          <tr>
            <td>
              <div><code>public static class <a href="/reference/dokkatest/companionStatic/ContainerOfNamed.NamedCompanion.html">ContainerOfNamed.NamedCompanion</a></code></div>
            </td>
          </tr>
        </tbody>
      </table>
    </div>
    <div class="devsite-table-wrapper">
      <table class="responsive">
        <colgroup>
          <col width="40%">
          <col>
        </colgroup>
        <thead>
          <tr>
            <th colspan="100%"><h3>Constants</h3></th>
          </tr>
        </thead>
        <tbody class="list">
          <tr>
            <td width="40%"><code>static&nbsp;final double</code></td>
            <td>
              <div><code><a href="/reference/dokkatest/companionStatic/ContainerOfNamed.NamedCompanion.html#namedCompanionConst()">namedCompanionConst</a></code></div>
            </td>
          </tr>
        </tbody>
      </table>
    </div>
    <div class="devsite-table-wrapper">
      <table class="responsive">
        <colgroup>
          <col width="40%">
          <col>
        </colgroup>
        <thead>
          <tr>
            <th colspan="100%"><h3>Public fields</h3></th>
          </tr>
        </thead>
        <tbody class="list">
          <tr>
            <td width="40%"><code>static&nbsp;final double</code></td>
            <td>
              <div><code><a href="/reference/dokkatest/companionStatic/ContainerOfNamed.NamedCompanion.html#namedCompanionStaticProp()">namedCompanionStaticProp</a></code></div>
            </td>
          </tr>
        </tbody>
      </table>
    </div>
    <div class="devsite-table-wrapper">
      <table class="responsive">
        <colgroup>
          <col width="40%">
          <col>
        </colgroup>
        <thead>
          <tr>
            <th colspan="100%"><h3>Public constructors</h3></th>
          </tr>
        </thead>
        <tbody class="list">
          <tr>
            <td>
              <div><code><a href="/reference/dokkatest/companionStatic/ContainerOfNamed.html#ContainerOfNamed()">ContainerOfNamed</a>()</code></div>
            </td>
          </tr>
        </tbody>
      </table>
    </div>
    <div class="list">
      <h2>Constants</h2>
      <div class="api-item"><a name="getNamedCompanionConst()"></a><a name="setNamedCompanionConst()"></a><a name="getNamedCompanionConst--"></a><a name="setNamedCompanionConst--"></a>
        <h3 class="api-name" id="namedCompanionConst()">namedCompanionConst</h3>
        <pre class="api-signature no-pretty-print">public&nbsp;static&nbsp;final&nbsp;double&nbsp;<a href="/reference/dokkatest/companionStatic/ContainerOfNamed.NamedCompanion.html#namedCompanionConst()">namedCompanionConst</a></pre>
      </div>
    </div>
    <div class="list">
      <h2>Public fields</h2>
      <div class="api-item"><a name="getNamedCompanionStaticProp()"></a><a name="setNamedCompanionStaticProp()"></a><a name="getNamedCompanionStaticProp--"></a><a name="setNamedCompanionStaticProp--"></a>
        <h3 class="api-name" id="namedCompanionStaticProp()">namedCompanionStaticProp</h3>
        <pre class="api-signature no-pretty-print">public&nbsp;static&nbsp;final&nbsp;double&nbsp;<a href="/reference/dokkatest/companionStatic/ContainerOfNamed.NamedCompanion.html#namedCompanionStaticProp()">namedCompanionStaticProp</a></pre>
      </div>
    </div>
    <div class="list">
      <h2>Public constructors</h2>
      <div class="api-item"><a name="ContainerOfNamed--"></a><a name="containerofnamed"></a>
        <h3 class="api-name" id="ContainerOfNamed()">ContainerOfNamed</h3>
        <pre class="api-signature no-pretty-print">public&nbsp;<a href="/reference/dokkatest/companionStatic/ContainerOfNamed.html#ContainerOfNamed()">ContainerOfNamed</a>()</pre>
      </div>
    </div>
  </body>
</html>
