<!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="description" content="code_in_comments library API docs, for the Dart programming language.">
  <title>code_in_comments library - Dart API</title>
  <!-- required because all the links are pseudo-absolute -->
  <base href="..">

  <link rel='stylesheet' href='https://fonts.googleapis.com/css?family=Source+Code+Pro|Roboto:500,400italic,300,400' type='text/css'>
  <link rel="stylesheet" href="static-assets/prettify.css">
  <link rel="stylesheet" href="static-assets/css/bootstrap.min.css">
  <link rel="stylesheet" href="static-assets/styles.css">
  <link rel="icon" href="static-assets/favicon.png">

  <!-- Do not remove placeholder -->
  <!-- Header Placeholder -->
</head>

<body>

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

<header class="container-fluid" id="title">
  <nav class="navbar navbar-fixed-top">
    <div class="container">
      <div class="row">
        <div class="col-sm-12 contents">
          <button id="sidenav-left-toggle" type="button">&nbsp;</button>
          <ol class="breadcrumbs gt-separated hidden-xs">
            <li><a href="index.html">test_package</a></li>
            <li class="self-crumb">code_in_comments</li>
          </ol>
          <div class="self-name">code_in_comments</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>
        </div> <!-- /col -->
      </div> <!-- /row -->
    </div> <!-- /container -->
  </nav>

  <div class="container masthead">
    <div class="row">
      <div class="col-sm-12 contents">
        <ol class="breadcrumbs gt-separated visible-xs">
          <li><a href="index.html">test_package</a></li>
          <li class="self-crumb">code_in_comments</li>
        </ol>
        <div class="title-description">
          <h1 class="title">
            <span class="kind">library</span> code_in_comments
          </h1>
        </div>
      </div> <!-- /col -->
    </div> <!-- /row -->
  </div> <!-- /container -->

</header>

<div class="container body">
  <div class="row">

  <div class="col-xs-6 col-sm-3 col-md-2 sidebar sidebar-offcanvas-left">
    <h5><a href="index.html">test_package</a></h5>


    <ol>
      <li class="section-title"><a href="index.html#libraries">Libraries</a></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="css/css-library.html">css</a></li>
      <li><a href="ex/ex-library.html">ex</a></li>
      <li><a href="fake/fake-library.html">fake</a></li>
      <li><a class="deprecated" href="is_deprecated/is_deprecated-library.html">is_deprecated</a></li>
      <li><a href="test_package_imported.main/test_package_imported.main-library.html">test_package_imported.main</a></li>
      <li><a href="two_exports/two_exports-library.html">two_exports</a></li>
    </ol>
  </div>

  <div class="col-xs-12 col-sm-9 col-md-8 main-content">

    <section class="desc markdown">
      <pre class="language-dart prettyprint"><code class="language-dart">void main() {
  // in Dart!
}
</code></pre>
<pre class="language-yaml prettyprint"><code class="language-yaml">and_yaml:
  - value
  - "value"
  - 3.14
</code></pre>
    </section>
    







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

  <div class="col-xs-6 col-sm-6 col-md-2 sidebar sidebar-offcanvas-right">
    <h5>code_in_comments</h5>
    <ol>
    
    
    
    
    
    
    </ol>
  </div><!--/sidebar-offcanvas-right-->

</div> <!-- row -->
</div> <!-- container -->

<footer>
  <div class="container-fluid">
    <div class="container">
      <p class="text-center">
        <span class="no-break">
          test_package 0.0.1
        </span>
        &bull;
        <span class="no-break">
          <a href="https://www.dartlang.org">
            <img src="static-assets/favicon.png" alt="Dart" title="Dart" width="16" height="16">
          </a>
        </span>
        &bull;
        <span class="copyright no-break">
          <a href="http://creativecommons.org/licenses/by-sa/4.0/">cc license</a>
        </span>
      </p>
    </div>
  </div>
</footer>

<script src="https://code.jquery.com/jquery-2.1.4.min.js"></script>
<script src="static-assets/typeahead.bundle.min.js"></script>
<script src="static-assets/prettify.js"></script>
<script src="static-assets/URI.js"></script>
<script src="static-assets/script.js"></script>
<!-- Do not remove placeholder -->
<!-- Footer Placeholder -->

</body>

</html>
