<!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>CVC3: CVC3::CDFlags Class Reference</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <link href="doxygen.css" rel="stylesheet" type="text/css"/> </head> <body> <!-- Generated by Doxygen 1.7.4 --> <div id="top"> <div id="titlearea"> <table cellspacing="0" cellpadding="0"> <tbody> <tr style="height: 56px;"> <td style="padding-left: 0.5em;"> <div id="projectname">CVC3 <span id="projectnumber">2.4.1</span></div> </td> </tr> </tbody> </table> </div> <div id="navrow1" class="tabs"> <ul class="tablist"> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> <li><a href="modules.html"><span>Modules</span></a></li> <li><a href="namespaces.html"><span>Namespaces</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 id="navrow2" class="tabs2"> <ul class="tablist"> <li><a href="annotated.html"><span>Class List</span></a></li> <li><a href="classes.html"><span>Class Index</span></a></li> <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> <li><a href="functions.html"><span>Class Members</span></a></li> </ul> </div> <div id="nav-path" class="navpath"> <ul> <li class="navelem"><a class="el" href="namespaceCVC3.html">CVC3</a> </li> <li class="navelem"><a class="el" href="classCVC3_1_1CDFlags.html">CDFlags</a> </li> </ul> </div> </div> <div class="header"> <div class="summary"> <a href="#pub-methods">Public Member Functions</a> | <a href="#pri-methods">Private Member Functions</a> | <a href="#pri-attribs">Private Attributes</a> </div> <div class="headertitle"> <div class="title">CVC3::CDFlags Class Reference</div> </div> </div> <div class="contents"> <!-- doxytag: class="CVC3::CDFlags" --><!-- doxytag: inherits="CVC3::ContextObj" --> <p><code>#include <<a class="el" href="cdflags_8h_source.html">cdflags.h</a>></code></p> <div class="dynheader"> Inheritance diagram for CVC3::CDFlags:</div> <div class="dyncontent"> <div class="center"> <img src="classCVC3_1_1CDFlags.png" usemap="#CVC3::CDFlags_map" alt=""/> <map id="CVC3::CDFlags_map" name="CVC3::CDFlags_map"> <area href="classCVC3_1_1ContextObj.html" alt="CVC3::ContextObj" shape="rect" coords="0,0,114,24"/> </map> </div></div> <p><a href="classCVC3_1_1CDFlags-members.html">List of all members.</a></p> <h2><a name="pub-methods"></a> Public Member Functions</h2> <ul> <li><a class="el" href="classCVC3_1_1CDFlags.html#a7dd75b81023b8f136bc7369f1445164d">CDFlags</a> (<a class="el" href="classCVC3_1_1Context.html">Context</a> *context) <li><a class="el" href="classCVC3_1_1CDFlags.html#af1027a5739eebb19bdb766d00579fcd9">~CDFlags</a> () <li>void <a class="el" href="classCVC3_1_1CDFlags.html#a4350e93b26673df04aadbf83d2c9b809">set</a> (unsigned mask, int scope=-1) <li>void <a class="el" href="classCVC3_1_1CDFlags.html#a29c4414998471a86b258c910d6167bcf">clear</a> (unsigned mask, int scope=-1) <li>bool <a class="el" href="classCVC3_1_1CDFlags.html#a451b1398639a0b5fc8777ef5fc22ea7e">get</a> (unsigned mask) const </ul> <h2><a name="pri-methods"></a> Private Member Functions</h2> <ul> <li>virtual <a class="el" href="classCVC3_1_1ContextObj.html">ContextObj</a> * <a class="el" href="classCVC3_1_1CDFlags.html#a33acad825f9e9bd5953483a948da241d">makeCopy</a> (<a class="el" href="classCVC3_1_1ContextMemoryManager.html">ContextMemoryManager</a> *cmm) <dl class="el"><dd class="mdescRight">Make a copy of the current object so it can be restored to its current state. <a href="#a33acad825f9e9bd5953483a948da241d"></a><br/></dl><li>virtual void <a class="el" href="classCVC3_1_1CDFlags.html#acf55a63e2265061bbc48a1d6c5ce0026">restoreData</a> (<a class="el" href="classCVC3_1_1ContextObj.html">ContextObj</a> *data) <dl class="el"><dd class="mdescRight">Restore the current object from the given data. <a href="#acf55a63e2265061bbc48a1d6c5ce0026"></a><br/></dl><li>virtual void <a class="el" href="classCVC3_1_1CDFlags.html#a2e30b4fc6143e0ea77c0e46b30597c33">setNull</a> (void) <dl class="el"><dd class="mdescRight">Set the current object to be invalid. <a href="#a2e30b4fc6143e0ea77c0e46b30597c33"></a><br/></dl><li>void <a class="el" href="classCVC3_1_1CDFlags.html#abb050623665ab804a001e2167d72f2e0">update</a> (unsigned mask, int scope, bool setMask) <li><a class="el" href="classCVC3_1_1CDFlags.html#ab46422ee150c54346f28863eaf4caebd">CDFlags</a> (const <a class="el" href="classCVC3_1_1CDFlags.html">CDFlags</a> &cdflags) <li><a class="el" href="classCVC3_1_1CDFlags.html">CDFlags</a> & <a class="el" href="classCVC3_1_1CDFlags.html#a9fcbe34c4698e936f13b5b30e71e627c">operator=</a> (const <a class="el" href="classCVC3_1_1CDFlags.html">CDFlags</a> &cdflags) </ul> <h2><a name="pri-attribs"></a> Private Attributes</h2> <ul> <li>unsigned <a class="el" href="classCVC3_1_1CDFlags.html#a8d203d30ebfb2164c0172a5f9ba6acba">d_flags</a> </ul> <hr/><a name="details" id="details"></a><h2>Detailed Description</h2> <div class="textblock"> <p>Definition at line <a class="el" href="cdflags_8h_source.html#l00037">37</a> of file <a class="el" href="cdflags_8h_source.html">cdflags.h</a>.</p> </div><hr/><h2>Constructor & Destructor Documentation</h2> <a class="anchor" id="ab46422ee150c54346f28863eaf4caebd"></a><!-- doxytag: member="CVC3::CDFlags::CDFlags" ref="ab46422ee150c54346f28863eaf4caebd" args="(const CDFlags &cdflags)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">CVC3::CDFlags::CDFlags </td> <td>(</td> <td class="paramtype">const <a class="el" href="classCVC3_1_1CDFlags.html">CDFlags</a> & </td> <td class="paramname"><em>cdflags</em></td><td>)</td> <td><code> [inline, private]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Definition at line <a class="el" href="cdflags_8h_source.html#l00050">50</a> of file <a class="el" href="cdflags_8h_source.html">cdflags.h</a>.</p> </div> </div> <a class="anchor" id="a7dd75b81023b8f136bc7369f1445164d"></a><!-- doxytag: member="CVC3::CDFlags::CDFlags" ref="a7dd75b81023b8f136bc7369f1445164d" args="(Context *context)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">CVC3::CDFlags::CDFlags </td> <td>(</td> <td class="paramtype"><a class="el" href="classCVC3_1_1Context.html">Context</a> * </td> <td class="paramname"><em>context</em></td><td>)</td> <td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Definition at line <a class="el" href="cdflags_8h_source.html#l00054">54</a> of file <a class="el" href="cdflags_8h_source.html">cdflags.h</a>.</p> <p>References <a class="el" href="debug_8h_source.html#l00406">IF_DEBUG</a>.</p> </div> </div> <a class="anchor" id="af1027a5739eebb19bdb766d00579fcd9"></a><!-- doxytag: member="CVC3::CDFlags::~CDFlags" ref="af1027a5739eebb19bdb766d00579fcd9" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">CVC3::CDFlags::~CDFlags </td> <td>(</td> <td class="paramname"></td><td>)</td> <td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Definition at line <a class="el" href="cdflags_8h_source.html#l00056">56</a> of file <a class="el" href="cdflags_8h_source.html">cdflags.h</a>.</p> </div> </div> <hr/><h2>Member Function Documentation</h2> <a class="anchor" id="a33acad825f9e9bd5953483a948da241d"></a><!-- doxytag: member="CVC3::CDFlags::makeCopy" ref="a33acad825f9e9bd5953483a948da241d" args="(ContextMemoryManager *cmm)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="classCVC3_1_1ContextObj.html">ContextObj</a>* CVC3::CDFlags::makeCopy </td> <td>(</td> <td class="paramtype"><a class="el" href="classCVC3_1_1ContextMemoryManager.html">ContextMemoryManager</a> * </td> <td class="paramname"><em>cmm</em></td><td>)</td> <td><code> [inline, private, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Make a copy of the current object so it can be restored to its current state. </p> <p>Implements <a class="el" href="classCVC3_1_1ContextObj.html#a11da9a588638bb9c3fdbd5218dfdf9c6">CVC3::ContextObj</a>.</p> <p>Definition at line <a class="el" href="cdflags_8h_source.html#l00040">40</a> of file <a class="el" href="cdflags_8h_source.html">cdflags.h</a>.</p> <p>Referenced by <a class="el" href="cdflags_8cpp_source.html#l00031">update()</a>.</p> </div> </div> <a class="anchor" id="acf55a63e2265061bbc48a1d6c5ce0026"></a><!-- doxytag: member="CVC3::CDFlags::restoreData" ref="acf55a63e2265061bbc48a1d6c5ce0026" args="(ContextObj *data)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual void CVC3::CDFlags::restoreData </td> <td>(</td> <td class="paramtype"><a class="el" href="classCVC3_1_1ContextObj.html">ContextObj</a> * </td> <td class="paramname"><em>data</em></td><td>)</td> <td><code> [inline, private, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Restore the current object from the given data. </p> <p>Reimplemented from <a class="el" href="classCVC3_1_1ContextObj.html#a37109b576b9dbaeee06f37cdc78f1a2e">CVC3::ContextObj</a>.</p> <p>Definition at line <a class="el" href="cdflags_8h_source.html#l00042">42</a> of file <a class="el" href="cdflags_8h_source.html">cdflags.h</a>.</p> <p>References <a class="el" href="cdflags_8h_source.html#l00038">d_flags</a>.</p> </div> </div> <a class="anchor" id="a2e30b4fc6143e0ea77c0e46b30597c33"></a><!-- doxytag: member="CVC3::CDFlags::setNull" ref="a2e30b4fc6143e0ea77c0e46b30597c33" args="(void)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual void CVC3::CDFlags::setNull </td> <td>(</td> <td class="paramtype">void </td> <td class="paramname"></td><td>)</td> <td><code> [inline, private, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Set the current object to be invalid. </p> <p>Implements <a class="el" href="classCVC3_1_1ContextObj.html#ac20b3e11a5fac338e4d859f08283e3bf">CVC3::ContextObj</a>.</p> <p>Definition at line <a class="el" href="cdflags_8h_source.html#l00044">44</a> of file <a class="el" href="cdflags_8h_source.html">cdflags.h</a>.</p> <p>References <a class="el" href="debug_8h_source.html#l00037">FatalAssert</a>.</p> </div> </div> <a class="anchor" id="abb050623665ab804a001e2167d72f2e0"></a><!-- doxytag: member="CVC3::CDFlags::update" ref="abb050623665ab804a001e2167d72f2e0" args="(unsigned mask, int scope, bool setMask)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void CDFlags::update </td> <td>(</td> <td class="paramtype">unsigned </td> <td class="paramname"><em>mask</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"><em>scope</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">bool </td> <td class="paramname"><em>setMask</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td><code> [private]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Definition at line <a class="el" href="cdflags_8cpp_source.html#l00031">31</a> of file <a class="el" href="cdflags_8cpp_source.html">cdflags.cpp</a>.</p> <p>References <a class="el" href="context_8h_source.html#l00350">CVC3::Scope::addToChain()</a>, <a class="el" href="cdflags_8h_source.html#l00038">d_flags</a>, <a class="el" href="context_8h_source.html#l00147">CVC3::ContextObjChain::d_restore</a>, <a class="el" href="context_8h_source.html#l00210">CVC3::ContextObj::d_restore</a>, <a class="el" href="debug_8h_source.html#l00408">DebugAssert</a>, <a class="el" href="context_8h_source.html#l00099">CVC3::Scope::getCMM()</a>, <a class="el" href="debug_8h_source.html#l00406">IF_DEBUG</a>, <a class="el" href="context_8h_source.html#l00095">CVC3::Scope::level()</a>, <a class="el" href="context_8h_source.html#l00269">CVC3::ContextObj::level()</a>, <a class="el" href="cdflags_8h_source.html#l00040">makeCopy()</a>, and <a class="el" href="context_8h_source.html#l00094">CVC3::Scope::prevScope()</a>.</p> </div> </div> <a class="anchor" id="a9fcbe34c4698e936f13b5b30e71e627c"></a><!-- doxytag: member="CVC3::CDFlags::operator=" ref="a9fcbe34c4698e936f13b5b30e71e627c" args="(const CDFlags &cdflags)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classCVC3_1_1CDFlags.html">CDFlags</a>& CVC3::CDFlags::operator= </td> <td>(</td> <td class="paramtype">const <a class="el" href="classCVC3_1_1CDFlags.html">CDFlags</a> & </td> <td class="paramname"><em>cdflags</em></td><td>)</td> <td><code> [inline, private]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Definition at line <a class="el" href="cdflags_8h_source.html#l00051">51</a> of file <a class="el" href="cdflags_8h_source.html">cdflags.h</a>.</p> </div> </div> <a class="anchor" id="a4350e93b26673df04aadbf83d2c9b809"></a><!-- doxytag: member="CVC3::CDFlags::set" ref="a4350e93b26673df04aadbf83d2c9b809" args="(unsigned mask, int scope=-1)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void CVC3::CDFlags::set </td> <td>(</td> <td class="paramtype">unsigned </td> <td class="paramname"><em>mask</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"><em>scope</em> = <code>-1</code> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Definition at line <a class="el" href="cdflags_8h_source.html#l00057">57</a> of file <a class="el" href="cdflags_8h_source.html">cdflags.h</a>.</p> <p>Referenced by <a class="el" href="expr_8h_source.html#l01473">CVC3::Expr::setComputeTransClosure()</a>, <a class="el" href="expr_8h_source.html#l01478">CVC3::Expr::setContainsBoundVar()</a>, <a class="el" href="expr_8h_source.html#l01463">CVC3::Expr::setFinite()</a>, <a class="el" href="expr_8h_source.html#l01493">CVC3::Expr::setImpliedLiteral()</a>, <a class="el" href="expr_8h_source.html#l01508">CVC3::Expr::setIntAssumption()</a>, <a class="el" href="expr_8h_source.html#l01503">CVC3::Expr::setInUserAssumption()</a>, <a class="el" href="expr_8h_source.html#l01443">CVC3::Expr::setIsAtomicFlag()</a>, <a class="el" href="expr_8h_source.html#l01513">CVC3::Expr::setJustified()</a>, <a class="el" href="expr_8h_source.html#l01488">CVC3::Expr::setNotArrayNormalized()</a>, <a class="el" href="expr_8h_source.html#l01528">CVC3::Expr::setRegisteredAtom()</a>, <a class="el" href="expr_8h_source.html#l01457">CVC3::Expr::setRewriteNormal()</a>, <a class="el" href="expr_8h_source.html#l01533">CVC3::Expr::setSelected()</a>, <a class="el" href="expr_8h_source.html#l01538">CVC3::Expr::setStoredPredicate()</a>, <a class="el" href="expr_8h_source.html#l01450">CVC3::Expr::setTerminalsConstFlag()</a>, <a class="el" href="expr_8h_source.html#l01518">CVC3::Expr::setTranslated()</a>, <a class="el" href="expr_8h_source.html#l01498">CVC3::Expr::setUserAssumption()</a>, <a class="el" href="expr_8h_source.html#l01523">CVC3::Expr::setUserRegisteredAtom()</a>, <a class="el" href="expr_8h_source.html#l01483">CVC3::Expr::setUsesCC()</a>, <a class="el" href="expr_8h_source.html#l01438">CVC3::Expr::setValidType()</a>, and <a class="el" href="expr_8h_source.html#l01468">CVC3::Expr::setWellFounded()</a>.</p> </div> </div> <a class="anchor" id="a29c4414998471a86b258c910d6167bcf"></a><!-- doxytag: member="CVC3::CDFlags::clear" ref="a29c4414998471a86b258c910d6167bcf" args="(unsigned mask, int scope=-1)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void CVC3::CDFlags::clear </td> <td>(</td> <td class="paramtype">unsigned </td> <td class="paramname"><em>mask</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"><em>scope</em> = <code>-1</code> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Definition at line <a class="el" href="cdflags_8h_source.html#l00058">58</a> of file <a class="el" href="cdflags_8h_source.html">cdflags.h</a>.</p> <p>Referenced by <a class="el" href="expr_8h_source.html#l01543">CVC3::Expr::clearRewriteNormal()</a>, <a class="el" href="expr_8h_source.html#l01443">CVC3::Expr::setIsAtomicFlag()</a>, and <a class="el" href="expr_8h_source.html#l01450">CVC3::Expr::setTerminalsConstFlag()</a>.</p> </div> </div> <a class="anchor" id="a451b1398639a0b5fc8777ef5fc22ea7e"></a><!-- doxytag: member="CVC3::CDFlags::get" ref="a451b1398639a0b5fc8777ef5fc22ea7e" args="(unsigned mask) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool CVC3::CDFlags::get </td> <td>(</td> <td class="paramtype">unsigned </td> <td class="paramname"><em>mask</em></td><td>)</td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Definition at line <a class="el" href="cdflags_8h_source.html#l00059">59</a> of file <a class="el" href="cdflags_8h_source.html">cdflags.h</a>.</p> <p>Referenced by <a class="el" href="expr_8h_source.html#l01334">CVC3::Expr::computeTransClosure()</a>, <a class="el" href="expr_8h_source.html#l01338">CVC3::Expr::containsBoundVar()</a>, <a class="el" href="expr_8h_source.html#l01314">CVC3::Expr::getIsAtomicFlag()</a>, <a class="el" href="expr_8h_source.html#l01318">CVC3::Expr::getTerminalsConstFlag()</a>, <a class="el" href="expr_8h_source.html#l01358">CVC3::Expr::inUserAssumption()</a>, <a class="el" href="expr_8h_source.html#l01326">CVC3::Expr::isFinite()</a>, <a class="el" href="expr_8h_source.html#l01350">CVC3::Expr::isImpliedLiteral()</a>, <a class="el" href="expr_8h_source.html#l01362">CVC3::Expr::isIntAssumption()</a>, <a class="el" href="expr_8h_source.html#l01366">CVC3::Expr::isJustified()</a>, <a class="el" href="expr_8h_source.html#l01378">CVC3::Expr::isRegisteredAtom()</a>, <a class="el" href="expr_8h_source.html#l01322">CVC3::Expr::isRewriteNormal()</a>, <a class="el" href="expr_8h_source.html#l01382">CVC3::Expr::isSelected()</a>, <a class="el" href="expr_8h_source.html#l01386">CVC3::Expr::isStoredPredicate()</a>, <a class="el" href="expr_8h_source.html#l01370">CVC3::Expr::isTranslated()</a>, <a class="el" href="expr_8h_source.html#l01354">CVC3::Expr::isUserAssumption()</a>, <a class="el" href="expr_8h_source.html#l01374">CVC3::Expr::isUserRegisteredAtom()</a>, <a class="el" href="expr_8h_source.html#l01302">CVC3::Expr::isValidType()</a>, <a class="el" href="expr_8h_source.html#l01330">CVC3::Expr::isWellFounded()</a>, <a class="el" href="expr_8h_source.html#l01346">CVC3::Expr::notArrayNormalized()</a>, <a class="el" href="expr_8h_source.html#l01342">CVC3::Expr::usesCC()</a>, <a class="el" href="expr_8h_source.html#l01306">CVC3::Expr::validIsAtomicFlag()</a>, and <a class="el" href="expr_8h_source.html#l01310">CVC3::Expr::validTerminalsConstFlag()</a>.</p> </div> </div> <hr/><h2>Member Data Documentation</h2> <a class="anchor" id="a8d203d30ebfb2164c0172a5f9ba6acba"></a><!-- doxytag: member="CVC3::CDFlags::d_flags" ref="a8d203d30ebfb2164c0172a5f9ba6acba" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">unsigned <a class="el" href="classCVC3_1_1CDFlags.html#a8d203d30ebfb2164c0172a5f9ba6acba">CVC3::CDFlags::d_flags</a><code> [private]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Definition at line <a class="el" href="cdflags_8h_source.html#l00038">38</a> of file <a class="el" href="cdflags_8h_source.html">cdflags.h</a>.</p> <p>Referenced by <a class="el" href="cdflags_8h_source.html#l00042">restoreData()</a>, and <a class="el" href="cdflags_8cpp_source.html#l00031">update()</a>.</p> </div> </div> <hr/>The documentation for this class was generated from the following files:<ul> <li><a class="el" href="cdflags_8h_source.html">cdflags.h</a></li> <li><a class="el" href="cdflags_8cpp_source.html">cdflags.cpp</a></li> </ul> </div> <hr class="footer"/><address class="footer"><small>Generated on Wed Sep 7 2011 for CVC3 by  <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.4 </small></address> </body> </html>