<!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 TypedFunctionsWithoutTypedefs constructor from the Class TypedFunctionsWithoutTypedefs class from the ex library, for the Dart programming language.">
  <title>TypedFunctionsWithoutTypedefs constructor - TypedFunctionsWithoutTypedefs 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/TypedFunctionsWithoutTypedefs-class.html">TypedFunctionsWithoutTypedefs</a></li>
    <li class="self-crumb">TypedFunctionsWithoutTypedefs constructor</li>
  </ol>
  <div class="self-name">TypedFunctionsWithoutTypedefs</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">
    <h5>TypedFunctionsWithoutTypedefs class</h5>
    <ol>
      <li class="section-title"><a href="ex/TypedFunctionsWithoutTypedefs-class.html#constructors">Constructors</a></li>
      <li><a href="ex/TypedFunctionsWithoutTypedefs/TypedFunctionsWithoutTypedefs.html">TypedFunctionsWithoutTypedefs</a></li>
    
      <li class="section-title inherited">
        <a href="ex/TypedFunctionsWithoutTypedefs-class.html#instance-properties">Properties</a>
      </li>
      <li class="inherited"><a href="ex/TypedFunctionsWithoutTypedefs/hashCode.html">hashCode</a></li>
      <li class="inherited"><a href="ex/TypedFunctionsWithoutTypedefs/runtimeType.html">runtimeType</a></li>
    
      <li class="section-title"><a href="ex/TypedFunctionsWithoutTypedefs-class.html#instance-methods">Methods</a></li>
      <li><a href="ex/TypedFunctionsWithoutTypedefs/getAComplexTypedef.html">getAComplexTypedef</a></li>
      <li><a href="ex/TypedFunctionsWithoutTypedefs/getAFunctionReturningBool.html">getAFunctionReturningBool</a></li>
      <li><a href="ex/TypedFunctionsWithoutTypedefs/getAFunctionReturningVoid.html">getAFunctionReturningVoid</a></li>
      <li class="inherited"><a href="ex/TypedFunctionsWithoutTypedefs/noSuchMethod.html">noSuchMethod</a></li>
      <li class="inherited"><a href="ex/TypedFunctionsWithoutTypedefs/toString.html">toString</a></li>
    
      <li class="section-title inherited"><a href="ex/TypedFunctionsWithoutTypedefs-class.html#operators">Operators</a></li>
      <li class="inherited"><a href="ex/TypedFunctionsWithoutTypedefs/operator_equals.html">operator ==</a></li>
    
    
    
    </ol>
  </div><!--/.sidebar-offcanvas-left-->

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

    <section class="multi-line-signature">
      
      <span class="name ">TypedFunctionsWithoutTypedefs</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>
