<!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="API docs for the test method from the PublicClassImplementsPrivateInterface class, for the Dart programming language.">
  <title>test method - PublicClassImplementsPrivateInterface class - ex library - Dart API</title>
  <!-- required because all the links are pseudo-absolute -->
  <base href="../..">

  <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="index.html">test_package</a></li>
    <li><a href="ex/ex-library.html">ex</a></li>
    <li><a href="ex/PublicClassImplementsPrivateInterface-class.html">PublicClassImplementsPrivateInterface</a></li>
    <li class="self-crumb">test method</li>
  </ol>
  <div class="self-name">test</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="index.html">test_package</a></li>
      <li><a href="ex/ex-library.html">ex</a></li>
      <li><a href="ex/PublicClassImplementsPrivateInterface-class.html">PublicClassImplementsPrivateInterface</a></li>
      <li class="self-crumb">test method</li>
    </ol>
    
    <h5>PublicClassImplementsPrivateInterface class</h5>
    <ol>
      <li class="section-title"><a href="ex/PublicClassImplementsPrivateInterface-class.html#constructors">Constructors</a></li>
      <li><a href="ex/PublicClassImplementsPrivateInterface/PublicClassImplementsPrivateInterface.html">PublicClassImplementsPrivateInterface</a></li>
    
      <li class="section-title inherited">
        <a href="ex/PublicClassImplementsPrivateInterface-class.html#instance-properties">Properties</a>
      </li>
      <li class="inherited"><a href="ex/PublicClassImplementsPrivateInterface/hashCode.html">hashCode</a></li>
      <li class="inherited"><a href="ex/PublicClassImplementsPrivateInterface/runtimeType.html">runtimeType</a></li>
    
      <li class="section-title"><a href="ex/PublicClassImplementsPrivateInterface-class.html#instance-methods">Methods</a></li>
      <li><a href="ex/PublicClassImplementsPrivateInterface/test.html">test</a></li>
      <li class="inherited"><a href="ex/PublicClassImplementsPrivateInterface/noSuchMethod.html">noSuchMethod</a></li>
      <li class="inherited"><a href="ex/PublicClassImplementsPrivateInterface/toString.html">toString</a></li>
    
      <li class="section-title inherited"><a href="ex/PublicClassImplementsPrivateInterface-class.html#operators">Operators</a></li>
      <li class="inherited"><a href="ex/PublicClassImplementsPrivateInterface/operator_equals.html">operator ==</a></li>
    
    
    
    </ol>
  </div><!--/.sidebar-offcanvas-->

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

    <section class="multi-line-signature">
      <div>
        <ol class="annotation-list">
          <li>@override</li>
        </ol>
      </div>
      <span class="returntype">void</span>
      <span class="name ">test</span>
(<wbr>)
      
    </section>
    
    

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

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

</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>
