
        ANAL, v1.6 - Code Analysis Program
  ----------------------------------------------
       copyright (c) Jim Fawcett, 1992-2007
           all rights granted to users
             except right to publish


  file path:
  C:\Users\Prateek\Documents\Visual Studio 2008\Projects\Obj_Class_Inspector\Obj_Class_Inspector


  04/11/2010  09:46:53 PM     28070  ActionsAndRules.cpp
 ==================================================
   cyclo lines function name
     1     4   manualMaintanRule::doAction
     3    12   manualMaintanRule::isSpecialKeyWord
     1     1   manualMaintanRule::manualMaintanRule
     2     5   manualMaintanRule
     6    31   manualMaintanRule::doTest
     1     4   ifndefPreprocRule::doAction
     1     1   ifndefPreprocRule::ifndefPreprocRule
     2     5   ifndefPreprocRule
     5    28   ifndefPreprocRule::doTest
     1     7   ifDefTestStubRule::ifDefTestStubRule
     2     4   ifDefTestStubRule
     1     3   ifDefTestStubRule::doAction
     7    35   ifDefTestStubRule::doTest
     1     4   noGlobalConstData::noGlobalConstData
     3    10   noGlobalConstData
    10    35   noGlobalConstData::doTest
     1     1   writeintoFile::writeintoFile
     3     9   writeintoFile::isSpecialKeyWord
     3    13   writeintoFile::doTestFunc
     4    35   writeintoFile::doTest
     4    15   CtorInitialzationRule
     3    14   CtorInitialzationRule::storeClassName
     5    27   CtorInitialzationRule::checkForCtorWithScopeResolution
     9    33   CtorInitialzationRule::doTest
     3     9   virtualDestructorRule::isSpecialKeyWord
     3    13   virtualDestructorRule::doTestFunction
     7    46   virtualDestructorRule::checkViolation
     1     5   virtualDestructorRule::virtualDestructorRule
     8    49   virtualDestructorRule::doTest
     4    15   virtualDestructorRule
     3    33   main

  04/12/2010  10:17:39 PM     15481  ActionsAndRules.h
 ==================================================
   cyclo lines function name
  - type:   class manualMaintanRule : public IRule 
  - type:   class ifndefPreprocRule : public IRule 
  - type:   class ifDefTestStubRule : public IRule 
  - type:   class CtorInitialzationRule : public IRule 
  - type:   class virtualDestructorRule : public IRule 
  - type:   class writeintoFile : public IRule 
  - type:   class noGlobalConstData : public IRule 
  - type:   class VirtualOverloadRule : public IRule 
     1     5   VirtualOverloadRule
     9    25   VirtualOverloadRule
    10    65   doTest
     3    13   doTestFunction
     3     9   isSpecialKeyWord
  - type:   class PreprocStatement : public IRule 
     2    10   doTest
  - type:   class FunctionDefinition : public IRule 
     1     6   FunctionDefinition
     1     4   getIsRuleSatisfied
     3     9   isSpecialKeyWord
     3    14   doTest
  - type:   class PrintPreproc : public IAction 
     1     5   doAction
  - type:   class PrintFunction : public IAction 
     1     5   doAction
  - type:   class PrettyPrintFunction : public IAction 
     2    11   doAction
  - type:   class PreprocToQ : public IAction 
     1     4   PreprocToQ
     1     4   doAction
  - type:   class PrettyPrintToQ : public IAction 
     1     4   PrettyPrintToQ
     2    11   doAction

  module summary:
 ================
  lines of function code: 710
  lines of code text:     1336
  cyclomatic complexity:  153

  04/11/2010  12:47:21 PM      6700  ConfigureParser.cpp
 ==================================================
   cyclo lines function name
     1     2   ConfigParseToConsole::ConfigParseToConsole
     1    13   ConfigParseToConsole
     2     6   ConfigParseToConsole::Attach
     1    33   ConfigParseToConsole::Build
     1     3   ConfigParseToQueue::ConfigParseToQueue
     1    13   ConfigParseToQueue
     2     6   ConfigParseToQueue::Attach
     1    30   ConfigParseToQueue::Build
    12    88   main

  04/11/2010  12:47:21 PM      3717  ConfigureParser.h
 ==================================================
   cyclo lines function name
  - pointer returned from public member function:
      Parser *Build(); 
  - type:   class ConfigParseToConsole : IBuilder 
  - pointer returned from public member function:
      Parser *Build(); 
  - pointer returned from public member function:
      std::queue < std::string > *GetQueue(); 
  - type:   class ConfigParseToQueue : IBuilder 
     1     4   ConfigParseToQueue::GetQueue

  module summary:
 ================
  lines of function code: 198
  lines of code text:     366
  cyclomatic complexity:  23

  04/12/2010  09:30:53 PM      5341  Executive.cpp  
 ==================================================
   cyclo lines function name
     3    37   Executive::testAnnotate
     3    45   Executive::testRules
     4    28   main

  04/11/2010  06:39:11 PM      2093  Executive.h    
 ==================================================
   cyclo lines function name
  - type:   class Executive 

  module summary:
 ================
  lines of function code: 110
  lines of code text:     230
  cyclomatic complexity:  10

  04/02/2010  11:27:24 PM     13290  FileSystem.cpp 
 ==================================================
   cyclo lines function name
     4    20   File::File
     3    13   File
     2     9   File::getLine
     3     8   File::putLine
     5    16   File::getBlock
     3     9   File::putBlock
     3     8   File::isGood
     3     7   File::flush
     3     7   File::clear
     3     8   File::close
     1     5   FileHandler::getFullPath
     3    12   FileHandler::getPath
     2     8   FileHandler::getFileName
     1     5   FileHandler::getCurrentDirectory
     1     4   FileHandler::setCurrentDirectory
     3     8   FileHandler::getSeperatorChar
     7    29   FileHandler::getFileSpecs
     9    31   FileHandler::getSubDirectorySpecs
     5    17   FileHandler::getFiles
     5    17   FileHandler::getDirectories
     1     5   title
    20   133   main

  04/02/2010  11:27:24 PM      4538  FileSystem.h   
 ==================================================
   cyclo lines function name
  - type:   typedef char byte 
  - public data declaration:
      typedef char byte 
  - type:   typedef std::vector < byte > block 
  - public data declaration:
      typedef std::vector < byte > block 
  - type:   class File 
     1     1   File::name
     1     1   File::blockSize
  - type:   class FileHandler 
     1     1   FileHandler::FileHandler

  module summary:
 ================
  lines of function code: 382
  lines of code text:     563
  cyclomatic complexity:  93

  04/02/2010  11:32:43 PM      4351  GetIncludes.cpp
 ==================================================
   cyclo lines function name
     2     5   Includes::showFull
     2     6   Includes::show
     2     7   Includes::mergeFiles
     4    16   Includes::getIncludedFileSpec
     7    56   main

  04/02/2010  11:26:12 PM      2293  GetIncludes.h  
 ==================================================
   cyclo lines function name
  - type:   typedef std::vector < std::string > vector 
  - type:   class Includes 

  module summary:
 ================
  lines of function code: 90
  lines of code text:     179
  cyclomatic complexity:  17

  04/02/2010  11:03:17 PM      3861  Parser.cpp     
 ==================================================
   cyclo lines function name
     1     4   Parser::addRule
     3    10   Parser::parse
     1     4   IRule::addAction
     3     6   IRule::doActions
    12    88   main

  04/11/2010  06:42:59 PM      4121  Parser.h       
 ==================================================
   cyclo lines function name
  - global data declaration:
      class Parser; 
  - type:   class IBuilder 
     1     2   IBuilder
  - type:   class IAction 
     1     2   IAction
  - type:   class IRule 
     1     2   IRule
  - type:   class Parser 
     1     1   Parser::Parser
     1     1   Parser
     1     1   Parser::next

  module summary:
 ================
  lines of function code: 121
  lines of code text:     278
  cyclomatic complexity:  26

  04/11/2010  07:55:14 PM      6355  ProcessCmdArg.cpp
 ==================================================
   cyclo lines function name
     1     1   ProcessCmdArg::ProcessCmdArg
     1     4   ProcessCmdArg::setFileGivenForRules
     1     4   ProcessCmdArg::getFileGivenForRules
     7    33   ProcessCmdArg::procCmdArg
     1     4   ProcessCmdArg::setFilePathToAnnotate
     1     4   ProcessCmdArg::getFilePathToAnnotate
     1     4   ProcessCmdArg::getIsAnnotate
     1     4   ProcessCmdArg::getIsRules
     4    33   main

  04/11/2010  07:45:01 PM      2865  ProcessCmdArg.h
 ==================================================
   cyclo lines function name
  - type:   class ProcessCmdArg 

  module summary:
 ================
  lines of function code: 91
  lines of code text:     263
  cyclomatic complexity:  18

  04/02/2010  11:04:04 PM      4737  SemiExpression.cpp
 ==================================================
   cyclo lines function name
     1     4   SemiExp::SemiExp
     1     3   SemiExp
     6    16   SemiExp::isTerminator
     6    24   SemiExp::get
     4     7   SemiExp::isComment
     2     6   operator[]
     4    10   SemiExp::show
     3     7   SemiExp::find
     2    11   SemiExp::remove
     2     5   SemiExp::trimFront
     3    10   SemiExp::toLower
     4    35   main

  04/08/2010  03:01:25 AM      4373  SemiExpression.h
 ==================================================
   cyclo lines function name
  - type:   class SemiExp : public ITokCollection 
     1     1   SemiExp::length
     1     1   SemiExp::verbose
     1     4   SemiExp::makeCommentSemiExp
     1     1   SemiExp::clear
     1     4   SemiExp::push_back

  module summary:
 ================
  lines of function code: 149
  lines of code text:     303
  cyclomatic complexity:  43

  04/02/2010  11:04:43 PM      9273  Tokenizer.cpp  
 ==================================================
   cyclo lines function name
     4    17   Toker::Toker
     3    12   Toker
     2     7   Toker::setMode
     1     5   Toker::setSingleCharTokens
     4    17   Toker::attach
     2     8   Toker::peek
     1     7   Toker::putback
     2    10   Toker::get
     4    16   Toker::getChar
     2     6   Toker::isSingleCharTok
     3     9   Toker::stripWhiteSpace
     2     6   Toker::isIdentifierChar
     6    14   Toker::isTokEnd
     3    14   Toker::isBeginComment
     3     8   Toker::isEndComment
     3    18   Toker::eatComment
     3    14   Toker::isBeginQuote
     4    11   Toker::isEndQuote
     2    14   Toker::eatQuote
    11    48   Toker::getTok
     8    62   main

  04/02/2010  11:04:31 PM      4975  Tokenizer.h    
 ==================================================
   cyclo lines function name
  - type:   class Toker 
     1     4   Toker::returnComments
     1     1   Toker::isFileEnd
     1     1   Toker::lines
     1     1   Toker::braceLevel

  module summary:
 ================
  lines of function code: 330
  lines of code text:     530
  cyclomatic complexity:  77

  03/25/2010  02:03:31 AM      1836  itokcollection.h
 ==================================================
   cyclo lines function name
  - type:   struct ITokCollection 
     1     1   ITokCollection

  module summary:
 ================
  lines of function code: 1
  lines of code text:     47
  cyclomatic complexity:  1

  04/12/2010  10:16:44 PM      1930  main.cpp       
 ==================================================
   cyclo lines function name
     4    30   main

  module summary:
 ================
  lines of function code: 30
  lines of code text:     70
  cyclomatic complexity:  4

 =================================================
          summary statistics - all files:
 =================================================

[  465, 2212] - total cyclo, total function lines
[   11,   65] - max cyclo, max function lines (excludes mains)
    0.210217  - complexity per line
        4165  - total lines

  functions exceeding cc or line limits: 
 ----------------------------------------
    10    65   doTest
    12    88   main
    20   133   main
     7    56   main
    12    88   main
    11    48   Toker::getTok
     8    62   main

  global data declarations: 
 ---------------------------
  class Parser; 

  public data declarations: 
 --------------------------
  typedef char byte 
  typedef std::vector < byte > block 

  pointers returned from public member functions: 
 -------------------------------------------------
  Parser *Build(); 
  Parser *Build(); 
  std::queue < std::string > *GetQueue(); 


