<HTML>
<!--
     Copyright (c) Jeremy Siek 2000
    
     Distributed under the Boost Software License, Version 1.0.
     (See accompanying file LICENSE_1_0.txt or copy at
     http://www.boost.org/LICENSE_1_0.txt)
  -->
<Head>
<Title>VertexAndEdgeListGraph</Title>
<BODY BGCOLOR="#ffffff" LINK="#0000ee" TEXT="#000000" VLINK="#551a8b" 
        ALINK="#ff0000"> 
<IMG SRC="../../../boost.png" 
     ALT="C++ Boost" width="277" height="86"> 

<BR Clear>


<H2><A NAME="concept:VertexAndEdgeListGraph"></A>
VertexAndEdgeListGraph
</H2>

The VertexAndEdgeListGraph concept refines the <a
href="./VertexListGraph.html">VertexListGraph</a> and the <a
href="./EdgeListGraph.html">EdgeListGraph</a> concepts. No further
requirements are added.

<H3>Refinement of</H3>

<a href="./VertexListGraph.html">VertexListGraph</a>, 
<a href="./EdgeListGraph.html">EdgeListGraph</a>


<H3>Models</H3>

<UL>
<LI><TT>adjacency_list</TT></LI>
</UL>

<P>

<H3>See Also</H3>

<a href="./graph_concepts.html">Graph concepts</a>

<H3>Concept Checking Class</H3>

<P>
<PRE>
  template &lt;class G&gt;
  struct VertexAndEdgeListGraphConcept
  {
    void constraints() {
      function_requires&lt; VertexListGraphConcept&lt;G&gt; &gt;();
      function_requires&lt; EdgeListGraphConcept&lt;G&gt; &gt;();
    }
  };
</PRE>


<br>
<HR>
<TABLE>
<TR valign=top>
<TD nowrap>Copyright &copy; 2000-2001</TD><TD>
<A HREF="http://www.boost.org/people/jeremy_siek.htm">Jeremy Siek</A>, Indiana University (<A HREF="mailto:jsiek@osl.iu.edu">jsiek@osl.iu.edu</A>)
</TD></TR></TABLE>

</BODY>
</HTML> 
