<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <meta name="generator" content="made with love by dartdoc 0.26.1">
  <meta name="description" content="test_package API docs, for the Dart programming language.">
  <title>test_package - Dart API docs</title>

  <link href="https://fonts.googleapis.com/css?family=Source+Code+Pro:500,400i,400,300|Source+Sans+Pro:400,300,700" rel="stylesheet">
  <link rel="stylesheet" href="static-assets/github.css">
  <link rel="stylesheet" href="static-assets/styles.css">
  <link rel="icon" href="static-assets/favicon.png">

</head>

<body>

<div id="overlay-under-drawer"></div>

<header id="title">
  <button id="sidenav-left-toggle" type="button">&nbsp;</button>
  <ol class="breadcrumbs gt-separated dark hidden-xs">
    <li><a href="http://github.com/dart-lang">test_package package</a></li>
  </ol>
  <div class="self-name">test_package</div>
  <form class="search navbar-right" role="search">
    <input type="text" id="search-box" autocomplete="off" disabled class="form-control typeahead" placeholder="Loading search...">
  </form>
</header>

<main>

  <div class="col-xs-6 col-sm-3 col-md-2 sidebar sidebar-offcanvas-left">
    <header id="header-search-sidebar" class="hidden-l">
      <form class="search-sidebar" role="search">
        <input type="text" id="search-sidebar" autocomplete="off" disabled class="form-control typeahead" placeholder="Loading search...">
      </form>
    </header>
    
    <ol class="breadcrumbs gt-separated dark hidden-l" id="sidebar-nav">
      <li><a href="http://github.com/dart-lang">test_package package</a></li>
    </ol>
    
    <h5 class="hidden-xs"><span class="package-name">test_package</span> <span class="package-kind">package</span></h5>
    <ol>
          <li class="section-title">Topics</li>
            <li><a href="topics/Superb-topic.html">Superb</a></li>
            <li><a href="topics/Unreal-topic.html">Unreal</a></li>
          <li class="section-title">Libraries</li>
          <li><a href="anonymous_library/anonymous_library-library.html">anonymous_library</a></li>
          <li><a href="another_anonymous_lib/another_anonymous_lib-library.html">another_anonymous_lib</a></li>
          <li><a href="code_in_comments/code_in_comments-library.html">code_in_comments</a></li>
          <li><a href="csspub/csspub-library.html">csspub</a></li>
          <li><a class="deprecated" href="is_deprecated/is_deprecated-library.html">is_deprecated</a></li>
          <li><a href="mylibpub/mylibpub-library.html">mylibpub</a></li>
          <li class="section-subtitle">Unreal</li>
            <li class="section-subitem"><a href="reexport_one/reexport_one-library.html">reexport_one</a></li>
            <li class="section-subitem"><a href="reexport_two/reexport_two-library.html">reexport_two</a></li>
          <li class="section-subtitle">Real Libraries</li>
            <li class="section-subitem"><a href="ex/ex-library.html">ex</a></li>
            <li class="section-subitem"><a href="fake/fake-library.html">fake</a></li>
            <li class="section-subitem"><a href="two_exports/two_exports-library.html">two_exports</a></li>
          <li class="section-subtitle">Misc</li>
            <li class="section-subitem"><a href="two_exports/two_exports-library.html">two_exports</a></li>
          <li class="section-subtitle">Other</li>
            <li class="section-subitem"><a href="css/css-library.html">css</a></li>
          <li class="section-title">test_package_imported</li>
          <li><a href="categoriesExported/categoriesExported-library.html">categoriesExported</a></li>
          <li><a href="test_package_imported.main/test_package_imported.main-library.html">test_package_imported.main</a></li>
    </ol>
  </div>

  <div class="col-xs-12 col-sm-9 col-md-8 main-content">
      <section class="desc markdown">
        <h1 id="best-package">Best Package</h1><ul><li><a href="#examples">Examples</a></li><li><a href="#another-section">Another Section</a></li></ul>
<p>This is an amazing package.</p>
<h2 id="examples">Examples</h2>
<p>For example, it:</p><ul><li>Is very fast</li><li>Has zero bugs</li><li>Is free</li></ul>
<p>It also has some awesome code</p>
<pre class="language-dart"><code class="language-dart">void main() {
  // in Dart!
}

/*
80-characters: to ensure default styles accommodate Dart line length convention.
01234567890123456789012345678901234567890123456789012345678901234567890123456789
*/
</code></pre>
<pre class="language-yaml"><code class="language-yaml">and_yaml:
  - value
  - "value"
  - 3.14
</code></pre>
<pre class="language-css"><code class="language-css">/* issue 1484 regression */
#id {
  background: green;
}

.class {
  background: red;
}

div {
  background: green;
}
</code></pre>
<pre class="language-html"><code class="language-html">&lt;div&gt;
  &lt;strong&gt;Hello!&lt;/strong&gt;
  &lt;h1&gt;World!&lt;/h1&gt;
&lt;/div&gt;
</code></pre>
<pre class="language-js"><code class="language-js">var f = function(a, b) {
  return a + b;  
};
</code></pre>
<h2 id="another-section">Another Section</h2>
<p>It sometimes generates warnings in commentRefs like this: <code>unknownThingy.FromSomewhere</code></p>
<p>Be sure to check out other awesome packages on <a href="https://pub.dartlang.org">pub</a>.</p>
      </section>
      
        <section class="summary">
            <h2>Libraries</h2>
          <dl>
            <dt id="anonymous_library">
              <span class="name"><a href="anonymous_library/anonymous_library-library.html">anonymous_library</a></span> 
            </dt>
            <dd>
              
            </dd>            <dt id="another_anonymous_lib">
              <span class="name"><a href="another_anonymous_lib/another_anonymous_lib-library.html">another_anonymous_lib</a></span> 
            </dt>
            <dd>
              
            </dd>            <dt id="code_in_comments">
              <span class="name"><a href="code_in_comments/code_in_comments-library.html">code_in_comments</a></span> 
            </dt>
            <dd>
              <code class="language-dart">void main() {
  // in Dart!
}
</code> <a href="code_in_comments/code_in_comments-library.html">[...]</a>
            </dd>            <dt id="csspub">
              <span class="name"><a href="csspub/csspub-library.html">csspub</a></span> 
            </dt>
            <dd>
              
            </dd>            <dt id="is_deprecated">
              <span class="name"><a class="deprecated" href="is_deprecated/is_deprecated-library.html">is_deprecated</a></span> 
            </dt>
            <dd>
              This lib is deprecated. It never had a chance
            </dd>            <dt id="mylibpub">
              <span class="name"><a href="mylibpub/mylibpub-library.html">mylibpub</a></span> 
            </dt>
            <dd>
              
            </dd>            <h3>Unreal</h3>
              <dt id="reexport_one">
                <span class="name"><a href="reexport_one/reexport_one-library.html">reexport_one</a></span>   <span class="category unreal cp-1 linked" title="This is part of the Unreal Topic."><a href="topics/Unreal-topic.html">Unreal</a></span>

              </dt>
              <dd>
                
              </dd>              <dt id="reexport_two">
                <span class="name"><a href="reexport_two/reexport_two-library.html">reexport_two</a></span>   <span class="category unreal cp-1 linked" title="This is part of the Unreal Topic."><a href="topics/Unreal-topic.html">Unreal</a></span>

              </dt>
              <dd>
                
              </dd>            <h3>Real Libraries</h3>
              <dt id="ex">
                <span class="name"><a href="ex/ex-library.html">ex</a></span> 
              </dt>
              <dd>
                a library. testing string escaping: <code>var s = 'a string'</code> <cool></cool>
              </dd>              <dt id="fake">
                <span class="name"><a href="fake/fake-library.html">fake</a></span> 
              </dt>
              <dd>
                WOW FAKE PACKAGE IS <strong>BEST</strong> <a href="http://example.org">PACKAGE</a> <a href="fake/fake-library.html">[...]</a>
              </dd>              <dt id="two_exports">
                <span class="name"><a href="two_exports/two_exports-library.html">two_exports</a></span> 
              </dt>
              <dd>
                
              </dd>            <h3>Misc</h3>
              <dt id="two_exports">
                <span class="name"><a href="two_exports/two_exports-library.html">two_exports</a></span> 
              </dt>
              <dd>
                
              </dd>            <h3>Other</h3>
              <dt id="css">
                <span class="name"><a href="css/css-library.html">css</a></span> 
              </dt>
              <dd>
                Testing that a library name doesn't conflict
with directories created by dartdoc.
              </dd>          </dl>
        </section>
        <section class="summary">
            <h2>test_package_imported</h2>
          <dl>
            <dt id="categoriesExported">
              <span class="name"><a href="categoriesExported/categoriesExported-library.html">categoriesExported</a></span> 
            </dt>
            <dd>
              
            </dd>            <dt id="test_package_imported.main">
              <span class="name"><a href="test_package_imported.main/test_package_imported.main-library.html">test_package_imported.main</a></span> 
            </dt>
            <dd>
              
            </dd>          </dl>
        </section>

  </div> <!-- /.main-content -->

</main>

<footer>
  <span class="no-break">
    test_package 0.0.1
  </span>

</footer>

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script src="static-assets/typeahead.bundle.min.js"></script>
<script src="static-assets/highlight.pack.js"></script>
<script src="static-assets/URI.js"></script>
<script src="static-assets/script.js"></script>


</body>

</html>
