Main Page   Alphabetical List   Compound List   File List   Compound Members   File Members  

clause.c File Reference

#include "lclintMacros.nf"
#include "basic.h"

Go to the source code of this file.

Functions

cstring clause_unparse (clause cl)
cstring clause_nameTaken (clause cl)
cstring clause_nameAlternate (clause cl)
cstring clause_nameFlip (clause cl, bool flip)
bool clause_isBreakable (clause cl)
bool clause_isLoop (clause cl)
bool clause_isConditional (clause cl)
bool clause_isSwitch (clause cl)
bool clause_isCase (clause cl)
bool clause_isNone (clause cl)


Function Documentation

bool clause_isBreakable ( clause cl )
 

Definition at line 115 of file clause.c.

Referenced by context_inConditional(), context_inDeepLoopSwitch(), and context_nextBreakClause().

00116 {
00117   return (cl == SWITCHCLAUSE
00118           || cl == WHILECLAUSE 
00119           || cl == DOWHILECLAUSE
00120           || cl == FORCLAUSE
00121           || cl == ITERCLAUSE);
00122 }

bool clause_isCase ( clause cl )
 

Definition at line 147 of file clause.c.

Referenced by context_exitSwitch().

00148 {
00149   return (cl == CASECLAUSE);
00150 }

bool clause_isConditional ( clause cl )
 

Definition at line 132 of file clause.c.

Referenced by clauseStack_controlDepth().

00133 {
00134   return (   cl == TRUECLAUSE
00135           || cl == FALSECLAUSE
00136           || cl == WHILECLAUSE
00137           || cl == FORCLAUSE
00138           || cl == SWITCHCLAUSE
00139           || cl == ITERCLAUSE);
00140 }

bool clause_isLoop ( clause cl )
 

Definition at line 124 of file clause.c.

Referenced by context_breakClause(), and context_inDeepLoop().

00125 {
00126   return (cl == WHILECLAUSE 
00127           || cl == FORCLAUSE
00128           || cl == ITERCLAUSE
00129           || cl == DOWHILECLAUSE);
00130 }

bool clause_isNone ( clause cl )
 

Definition at line 152 of file clause.c.

Referenced by context_exitAllClauses().

00153 {
00154   return (cl == NOCLAUSE);
00155 }

bool clause_isSwitch ( clause cl )
 

Definition at line 142 of file clause.c.

Referenced by context_breakClause(), and context_inDeepSwitch().

00143 {
00144   return (cl == SWITCHCLAUSE);
00145 }

cstring clause_nameAlternate ( clause cl )
 

Definition at line 80 of file clause.c.

Referenced by clause_nameFlip().

00081 {
00082   switch (cl)
00083     {
00084     case TRUECLAUSE:   return (cstring_makeLiteralTemp ("in continuation"));  
00085     case FALSECLAUSE:  return (cstring_makeLiteralTemp ("in false branch"));
00086     case ANDCLAUSE:    return (cstring_makeLiteralTemp ("in second and clause"));
00087     case ORCLAUSE:     return (cstring_makeLiteralTemp ("in second or clause"));
00088     case DOWHILECLAUSE:  return (cstring_makeLiteralTemp ("if loop is not taken"));
00089     case WHILECLAUSE:  return (cstring_makeLiteralTemp ("if loop is not taken"));
00090     case ITERCLAUSE:   return (cstring_makeLiteralTemp ("if iter body does not execute"));
00091     case FORCLAUSE:    return (cstring_makeLiteralTemp ("if for loop body does not execute"));
00092     case CASECLAUSE:   return (cstring_makeLiteralTemp ("in other case"));
00093     case NOCLAUSE:
00094     case SWITCHCLAUSE: return (cstring_makeLiteralTemp ("in other possible execution"));
00095     case CONDCLAUSE:   return (cstring_makeLiteralTemp ("in false condition"));
00096     case TRUEEXITCLAUSE: return (cstring_makeLiteralTemp ("in trueexit"));
00097     case FALSEEXITCLAUSE: return (cstring_makeLiteralTemp ("in falseexit"));
00098     }
00099 
00100   BADBRANCH;
00101 }

cstring clause_nameFlip ( clause cl,
bool flip )
 

Definition at line 103 of file clause.c.

00104 {
00105   if (flip)
00106     {
00107       return clause_nameAlternate (cl);
00108     }
00109   else
00110     {
00111       return clause_nameTaken (cl);
00112     }
00113 }

cstring clause_nameTaken ( clause cl )
 

Definition at line 56 of file clause.c.

Referenced by clause_nameFlip().

00057 {
00058   switch (cl)
00059     {
00060     case TRUECLAUSE:   return (cstring_makeLiteralTemp ("in true branch"));
00061     case FALSECLAUSE:  return (cstring_makeLiteralTemp ("in true branch"));
00062     case ANDCLAUSE:    return (cstring_makeLiteralTemp ("in first and clause"));
00063     case ORCLAUSE:     return (cstring_makeLiteralTemp ("in first or clause"));
00064     case DOWHILECLAUSE:  return (cstring_makeLiteralTemp ("in do ... while body"));
00065     case WHILECLAUSE:  return (cstring_makeLiteralTemp ("in while body"));
00066     case ITERCLAUSE:   return (cstring_makeLiteralTemp ("in iter body"));
00067     case FORCLAUSE:    return (cstring_makeLiteralTemp ("in for body"));
00068     case CASECLAUSE:   return (cstring_makeLiteralTemp ("in one case"));
00069     case NOCLAUSE:     return (cstring_makeLiteralTemp ("in some clause"));
00070     case SWITCHCLAUSE: return (cstring_makeLiteralTemp ("in one possible execution"));
00071     case CONDCLAUSE:   return (cstring_makeLiteralTemp ("in true condition"));
00072     case TRUEEXITCLAUSE: return (cstring_makeLiteralTemp ("in trueexit"));
00073     case FALSEEXITCLAUSE: return (cstring_makeLiteralTemp ("in falseexit"));
00074     }
00075 
00076   BADBRANCH;
00077 }

cstring clause_unparse ( clause cl )
 

Definition at line 32 of file clause.c.

00033 {
00034   switch (cl)
00035     {
00036     case TRUECLAUSE:   return (cstring_makeLiteralTemp ("true"));
00037     case FALSECLAUSE:  return (cstring_makeLiteralTemp ("false"));
00038     case ANDCLAUSE:    return (cstring_makeLiteralTemp ("and"));
00039     case ORCLAUSE:     return (cstring_makeLiteralTemp ("or"));
00040     case DOWHILECLAUSE:  return (cstring_makeLiteralTemp ("do ... while"));
00041     case WHILECLAUSE:  return (cstring_makeLiteralTemp ("while"));
00042     case ITERCLAUSE:   return (cstring_makeLiteralTemp ("iter"));
00043     case FORCLAUSE:    return (cstring_makeLiteralTemp ("for"));
00044     case CASECLAUSE:   return (cstring_makeLiteralTemp ("case"));
00045     case NOCLAUSE:     return (cstring_makeLiteralTemp ("none"));
00046     case SWITCHCLAUSE: return (cstring_makeLiteralTemp ("switch"));
00047     case CONDCLAUSE:   return (cstring_makeLiteralTemp ("cond"));
00048     case TRUEEXITCLAUSE: return (cstring_makeLiteralTemp ("trueexit"));
00049     case FALSEEXITCLAUSE: return (cstring_makeLiteralTemp ("falseexit"));
00050     }
00051 
00052   BADEXIT;
00053 }


Generated at Fri Nov 3 18:57:50 2000 for LCLint by doxygen1.2.3 written by Dimitri van Heesch, © 1997-2000