<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>Xalan-C++ API : Main Page</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<!-- The head section is copied from Doxygen 1.7.1 generated default output -->
<body>
<h2 align="center">Xalan-C++ API Documentation</h2>
<h3 align="center"><a href="../index.html">The Xalan C++ XSLT Processor Version 1.11</a></h3>
<hr/>
<!-- Generated by Doxygen 1.7.1 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
      <li><a href="classes.html"><span>Class&nbsp;Index</span></a></li>
      <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a>  </div>
  <div class="headertitle">
<h1>DOMStringGreaterThanFunction Struct Reference</h1>  </div>
</div>
<div class="contents">
<!-- doxytag: class="DOMStringGreaterThanFunction" -->
<p>Greater than functor for DOMStrings.  
<a href="#_details">More...</a></p>

<p><code>#include &lt;<a class="el" href="DOMStringHelper_8hpp_source.html">DOMStringHelper.hpp</a>&gt;</code></p>

<p><a href="structDOMStringGreaterThanFunction-members.html">List of all members.</a></p>
<h2><a name="pub-methods"></a>
Public Member Functions</h2>
<ul>
<li>result_type <a class="el" href="structDOMStringGreaterThanFunction.html#ac2bcf6275b2ef39dbca7d4349625a45e">operator()</a> (first_argument_type theLHS, second_argument_type theRHS) const 
</ul>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p>Greater than functor for DOMStrings. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>theLHS</em>&nbsp;</td><td>first string to compare </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>theRHS</em>&nbsp;</td><td>second string to compare </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if the theLHS is greater than theRHS </dd></dl>

<p>Definition at line <a class="el" href="DOMStringHelper_8hpp_source.html#l02757">2757</a> of file <a class="el" href="DOMStringHelper_8hpp_source.html">DOMStringHelper.hpp</a>.</p>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="ac2bcf6275b2ef39dbca7d4349625a45e"></a><!-- doxytag: member="DOMStringGreaterThanFunction::operator()" ref="ac2bcf6275b2ef39dbca7d4349625a45e" args="(first_argument_type theLHS, second_argument_type theRHS) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">result_type DOMStringGreaterThanFunction::operator() </td>
          <td>(</td>
          <td class="paramtype">first_argument_type&nbsp;</td>
          <td class="paramname"> <em>theLHS</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">second_argument_type&nbsp;</td>
          <td class="paramname"> <em>theRHS</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="DOMStringHelper_8hpp_source.html#l02761">2761</a> of file <a class="el" href="DOMStringHelper_8hpp_source.html">DOMStringHelper.hpp</a>.</p>

</div>
</div>
<hr/>The documentation for this struct was generated from the following file:<ul>
<li><a class="el" href="DOMStringHelper_8hpp_source.html">DOMStringHelper.hpp</a></li>
</ul>
</div>
<p align="center"><a href="graph_legend.html">Interpreting class diagrams</a></p>
<p><font color="#000000" face="arial,helvetica,sanserif" size="-1">
<i><a href="http://www.doxygen.org/">Doxygen</a> and 
<a href="http://www.graphviz.org/">GraphViz</a> are 
used to generate this API documentation from the Xalan-C header files.</i></font></p>

<table border="0" cellpadding="0" cellspacing="0" width="80%">
 <tr>
  <td width="80%" valign="top">
	<p align="center"><b>Xalan-C++ XSLT Processor Version 1.11</b><br/>
	Copyright &copy; 1999-2012 The Apache Software Foundation.<br/>
	All Rights Reserved.</p>
  </td>
 </tr>
 <tr>
  <td width="100%">
	<p align="center"><img src="asf_logo_wide.gif" width="268" height="25" align="bottom" border="0" alt="Apache Logo">
  </td>
 </tr>
</table>
</body>
</html>
