blob: 5d5479af7244a815eca883d2a966ada581b54deb [file] [log] [blame]
<?xml version="1.0"?>
<concept name="EqualityComparable" category="Utility"><!--
Based on concepts from the SGI Standard Template Library documentation:
Copyright (c) 1996-1999
Silicon Graphics Computer Systems, Inc.
Copyright (c) 1994
Hewlett-Packard Company
--><!--
Copyright 2000-2001 University of Notre Dame du Lac.
Copyright 2001-2002 Indiana University.
Some concepts based on versions from the MTL draft manual and Boost Graph
and Property Map documentation:
Copyright (c) Jeremy Siek, Lie-Quan Lee, and Andrew Lumsdaine 2000
-->
<param name="X" role="comparable-type"/>
<models-sentence>The type <arg num="1"/> must be a model of
<self/>.</models-sentence>
<description><para>Equality Comparable types must have <code>==</code> and
<code>!=</code> operators.</para></description>
<notation variables="x y">
<sample-value>
<type name="X"/>
</sample-value>
</notation>
<valid-expression name="Equality test">
<equal-to>
<sample-value><type name="X"/></sample-value>
<sample-value><type name="X"/></sample-value>
</equal-to>
<return-type>
<convertible-to testable="yes">
<type name="bool"/>
</convertible-to>
</return-type>
</valid-expression>
<valid-expression name="Inequality test">
<not-equal-to>
<sample-value><type name="X"/></sample-value>
<sample-value><type name="X"/></sample-value>
</not-equal-to>
<return-type>
<convertible-to testable="yes">
<type name="bool"/>
</convertible-to>
</return-type>
</valid-expression>
<example-model>
<type name="int"/>
</example-model>
<example-model>
<apply-template name="std::vector">
<type name="int"/>
</apply-template>
</example-model>
</concept>