<!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.8.2">
  <title>operator == method - Deprecated 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|Roboto:500,400italic,300,400' rel='stylesheet' 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">

  <meta name="description" content="API docs for the operator == method from the Deprecated class, for the Dart programming language.">
  <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><a href="ex/ex-library.html">ex</a></li>
            <li><a href="ex/Deprecated-class.html">Deprecated</a></li>
            <li class="self-crumb">operator ==</li>
          </ol>
          <div class="self-name">operator ==</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><a href="ex/ex-library.html">ex</a></li>
          <li><a href="ex/Deprecated-class.html">Deprecated</a></li>
          <li class="self-crumb">operator ==</li>
        </ol>
        <div class="title-description">
          <h1 class="title">
            <span class="kind">method</span> operator ==
          </h1>
        </div>
        <ul class="subnav">
          <li><a href="ex/Deprecated/operator_equals.html#source">Source</a></li>
        </ul>
      </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>
    <h5><a href="ex/ex-library.html">ex</a></h5>
    <h5><a href="ex/Deprecated-class.html">Deprecated</a></h5>

    <ol>
    
    
    
      <li class="section-title"><a href="ex/Deprecated-class.html#constructors">Constructors</a></li>
      <li><a href="ex/Deprecated/Deprecated.html">Deprecated</a></li>
    
      <li class="section-title">
        <a href="ex/Deprecated-class.html#instance-properties">Properties</a>
      </li>
      <li><a href="ex/Deprecated/expires.html">expires</a></li>
      <li class="inherited"><a href="ex/Deprecated/hashCode.html">hashCode</a></li>
      <li class="inherited"><a href="ex/Deprecated/runtimeType.html">runtimeType</a></li>
    
      <li class="section-title inherited"><a href="ex/Deprecated-class.html#operators">Operators</a></li>
      <li class="inherited"><a href="ex/Deprecated/operator_equals.html">operator ==</a></li>
    
      <li class="section-title"><a href="ex/Deprecated-class.html#instance-methods">Methods</a></li>
      <li class="inherited"><a href="ex/Deprecated/noSuchMethod.html">noSuchMethod</a></li>
      <li><a href="ex/Deprecated/toString.html">toString</a></li>
    </ol>

  </div><!--/.sidebar-offcanvas-->

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

    <section class="multi-line-signature">
        <span class="returntype">bool</span>
        <span class="name ">operator ==</span>(<wbr><span class="parameter" id="==-param-other"><span class="parameter-name">other</span></span>)
    </section>

    <section class="desc markdown">
      <p>The equality operator.</p>
<p>The default behavior for all <code>Object</code>s is to return true if and
only if <code>this</code> and <code>other</code> are the same object.</p>
<p>Override this method to specify a different equality relation on
a class. The overriding method must still be an equivalence relation.
That is, it must be:</p><ul><li>
<p>Total: It must return a boolean for all arguments. It should never throw
   or return <code>null</code>.</p></li><li>
<p>Reflexive: For all objects <code>o</code>, <code>o == o</code> must be true.</p></li><li>
<p>Symmetric: For all objects <code>o1</code> and <code>o2</code>, <code>o1 == o2</code> and <code>o2 == o1</code> must
   either both be true, or both be false.</p></li><li>
<p>Transitive: For all objects <code>o1</code>, <code>o2</code>, and <code>o3</code>, if <code>o1 == o2</code> and
   <code>o2 == o3</code> are true, then <code>o1 == o3</code> must be true.</p></li></ul>
<p>The method should also be consistent over time, so equality of two objects
should not change over time, or at least only change if one of the objects
was modified.</p>
<p>If a subclass overrides the equality operator it should override
the <code>hashCode</code> method as well to maintain consistency.</p>
    </section>
    
    <section class="summary source-code" id="source">
      <h2><span>Source</span> </h2>
      <pre><code class="prettyprint lang-dart">bool operator ==(other) =&gt; identical(this, other);</code></pre>
    </section>

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

</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/script.js"></script>
<!-- Do not remove placeholder -->
<!-- Footer Placeholder -->

</body>

</html>
