zcov: / include/clang/AST/TypeLocVisitor.h


Files: 1 Branches Taken: 71.5% 163 / 228
Generated: 2010-02-10 01:31 Branches Executed: 100.0% 228 / 228
Line Coverage: 75.0% 6 / 8


Programs: 8 Runs 12072


       1                 : //===--- TypeLocVisitor.h - Visitor for TypeLoc subclasses ------*- C++ -*-===//
       2                 : //
       3                 : //                     The LLVM Compiler Infrastructure
       4                 : //
       5                 : // This file is distributed under the University of Illinois Open Source
       6                 : // License. See LICENSE.TXT for details.
       7                 : //
       8                 : //===----------------------------------------------------------------------===//
       9                 : //
      10                 : //  This file defines the TypeLocVisitor interface.
      11                 : //
      12                 : //===----------------------------------------------------------------------===//
      13                 : #ifndef LLVM_CLANG_AST_TYPELOCVISITOR_H
      14                 : #define LLVM_CLANG_AST_TYPELOCVISITOR_H
      15                 : 
      16                 : #include "clang/AST/TypeLoc.h"
      17                 : #include "clang/AST/TypeVisitor.h"
      18                 : #include "llvm/Support/ErrorHandling.h"
      19                 : 
      20                 : namespace clang {
      21                 : 
      22                 : #define DISPATCH(CLASSNAME) \
      23                 :   return static_cast<ImplClass*>(this)-> \
      24                 :     Visit##CLASSNAME(cast<CLASSNAME>(TyLoc))
      25                 : 
      26                 : template<typename ImplClass, typename RetTy=void>
      27           128034: class TypeLocVisitor {
      28                 : public:
      29           226212:   RetTy Visit(TypeLoc TyLoc) {
                       62: branch 1 taken
                     1262: branch 2 taken
                        2: branch 3 taken
                      253: branch 4 taken
                        4: branch 5 taken
                        2: branch 6 taken
                        0: branch 7 not taken
                        0: branch 8 not taken
                       25: branch 9 taken
                       26: branch 10 taken
                        2: branch 11 taken
                        0: branch 12 not taken
                        0: branch 13 not taken
                        2: branch 14 taken
                        8: branch 15 taken
                      410: branch 16 taken
                       12: branch 17 taken
                        0: branch 18 not taken
                       63: branch 19 taken
                       75: branch 20 taken
                        8: branch 21 taken
                        0: branch 22 not taken
                       54: branch 23 taken
                        2: branch 24 taken
                        0: branch 25 not taken
                        0: branch 26 not taken
                        0: branch 27 not taken
                        0: branch 28 not taken
                        0: branch 29 not taken
                        0: branch 30 not taken
                       44: branch 31 taken
                      142: branch 32 taken
                        0: branch 33 not taken
                        9: branch 38 taken
                        0: branch 39 not taken
                        4: branch 40 taken
                        0: branch 41 not taken
                        0: branch 42 not taken
                        3: branch 43 taken
                        3: branch 44 taken
                        0: branch 45 not taken
                        0: branch 46 not taken
                        0: branch 47 not taken
                       13: branch 48 taken
                        0: branch 49 not taken
                        1: branch 50 taken
                        0: branch 51 not taken
                        1: branch 52 taken
                     2131: branch 53 taken
                       10: branch 54 taken
                        0: branch 55 not taken
                        4: branch 56 taken
                      798: branch 57 taken
                       16: branch 58 taken
                       65: branch 59 taken
                      869: branch 60 taken
                      524: branch 61 taken
                      395: branch 62 taken
                      112: branch 63 taken
                       57: branch 64 taken
                      360: branch 65 taken
                        0: branch 66 not taken
                        0: branch 67 not taken
                     1819: branch 69 taken
                     8061: branch 70 taken
                      250: branch 71 taken
                    16791: branch 72 taken
                      275: branch 73 taken
                     2669: branch 74 taken
                       50: branch 75 taken
                      363: branch 76 taken
                     1868: branch 77 taken
                      625: branch 78 taken
                      204: branch 79 taken
                       92: branch 80 taken
                        8: branch 81 taken
                      340: branch 82 taken
                       68: branch 83 taken
                    12738: branch 84 taken
                     2110: branch 85 taken
                        2: branch 86 taken
                     2364: branch 87 taken
                       86: branch 88 taken
                       10: branch 89 taken
                       21: branch 90 taken
                     6852: branch 91 taken
                      178: branch 92 taken
                      522: branch 93 taken
                     4079: branch 94 taken
                     3266: branch 95 taken
                     2871: branch 96 taken
                      567: branch 97 taken
                      197: branch 98 taken
                      382: branch 99 taken
                     3711: branch 100 taken
                        0: branch 101 not taken
                     3820: branch 103 taken
                    42210: branch 104 taken
                      212: branch 105 taken
                    14650: branch 106 taken
                      234: branch 107 taken
                     2228: branch 108 taken
                       45: branch 109 taken
                      354: branch 110 taken
                     1756: branch 111 taken
                      347: branch 112 taken
                      192: branch 113 taken
                      112: branch 114 taken
                       14: branch 115 taken
                      326: branch 116 taken
                       64: branch 117 taken
                    12453: branch 118 taken
                     2056: branch 119 taken
                        2: branch 120 taken
                    12776: branch 121 taken
                      284: branch 122 taken
                       25: branch 123 taken
                       19: branch 124 taken
                     6122: branch 125 taken
                      173: branch 126 taken
                      481: branch 127 taken
                     6097: branch 128 taken
                     2724: branch 129 taken
                     6550: branch 130 taken
                      465: branch 131 taken
                      289: branch 132 taken
                     1979: branch 133 taken
                     3453: branch 134 taken
                        0: branch 135 not taken
                       51: branch 137 taken
                     2622: branch 138 taken
                      211: branch 139 taken
                     1139: branch 140 taken
                        0: branch 141 not taken
                      109: branch 142 taken
                        4: branch 143 taken
                       16: branch 144 taken
                        2: branch 145 taken
                        0: branch 146 not taken
                        0: branch 147 not taken
                       14: branch 148 taken
                        8: branch 149 taken
                      325: branch 150 taken
                       56: branch 151 taken
                      101: branch 152 taken
                        0: branch 153 not taken
                        1: branch 154 taken
                      154: branch 155 taken
                        0: branch 156 not taken
                        0: branch 157 not taken
                       16: branch 158 taken
                     6027: branch 159 taken
                      150: branch 160 taken
                      434: branch 161 taken
                     3100: branch 162 taken
                       45: branch 163 taken
                     1210: branch 164 taken
                      338: branch 165 taken
                      148: branch 166 taken
                        8: branch 167 taken
                     1268: branch 168 taken
                        0: branch 169 not taken
      30           226212:     switch (TyLoc.getTypeLocClass()) {
      31                 : #define ABSTRACT_TYPELOC(CLASS, PARENT)
      32                 : #define TYPELOC(CLASS, PARENT) \
      33                 :     case TypeLoc::CLASS: DISPATCH(CLASS##TypeLoc);
      34                 : #include "clang/AST/TypeLocNodes.def"
      35                 :     }
      36                0:     llvm_unreachable("unexpected type loc class!");
      37                 :   }
      38                 : 
      39            96848:   RetTy Visit(UnqualTypeLoc TyLoc) {
                        0: branch 1 not taken
                        0: branch 2 not taken
                        0: branch 3 not taken
                    12569: branch 4 taken
                      226: branch 5 taken
                     1554: branch 6 taken
                       36: branch 7 taken
                      287: branch 8 taken
                     1686: branch 9 taken
                      330: branch 10 taken
                      191: branch 11 taken
                       42: branch 12 taken
                        0: branch 13 not taken
                        0: branch 14 not taken
                        0: branch 15 not taken
                    12257: branch 16 taken
                     2050: branch 17 taken
                        0: branch 18 not taken
                        0: branch 19 not taken
                        0: branch 20 not taken
                        0: branch 21 not taken
                        0: branch 22 not taken
                        0: branch 23 not taken
                        0: branch 24 not taken
                        0: branch 25 not taken
                        0: branch 26 not taken
                        0: branch 27 not taken
                        0: branch 28 not taken
                        0: branch 29 not taken
                        0: branch 30 not taken
                        0: branch 31 not taken
                     1929: branch 32 taken
                        0: branch 33 not taken
                        0: branch 35 not taken
                    38984: branch 36 taken
                      205: branch 37 taken
                       57: branch 38 taken
                        0: branch 39 not taken
                       42: branch 40 taken
                        1: branch 41 taken
                        3: branch 42 taken
                        0: branch 43 not taken
                        0: branch 44 not taken
                        0: branch 45 not taken
                        0: branch 46 not taken
                        0: branch 47 not taken
                      325: branch 48 taken
                        0: branch 49 not taken
                        3: branch 50 taken
                        0: branch 51 not taken
                        1: branch 52 taken
                    12470: branch 53 taken
                      244: branch 54 taken
                       17: branch 55 taken
                       15: branch 56 taken
                     5405: branch 57 taken
                      140: branch 58 taken
                      431: branch 59 taken
                     1800: branch 60 taken
                        0: branch 61 not taken
                      949: branch 62 taken
                      330: branch 63 taken
                       87: branch 64 taken
                     1963: branch 65 taken
                      219: branch 66 taken
                        0: branch 67 not taken
      40            96848:     switch (TyLoc.getTypeLocClass()) {
      41                 : #define ABSTRACT_TYPELOC(CLASS, PARENT)
      42                 : #define TYPELOC(CLASS, PARENT) \
      43                 :     case TypeLoc::CLASS: DISPATCH(CLASS##TypeLoc);
      44                 : #include "clang/AST/TypeLocNodes.def"
      45                 :     }
      46                0:     llvm_unreachable("unexpected type loc class!");
      47                 :   }
      48                 : 
      49                 : #define TYPELOC(CLASS, PARENT)      \
      50                 :   RetTy Visit##CLASS##TypeLoc(CLASS##TypeLoc TyLoc) { \
      51                 :     DISPATCH(PARENT);               \
      52                 :   }
      53                 : #include "clang/AST/TypeLocNodes.def"
      54                 : 
      55               32:   RetTy VisitTypeLoc(TypeLoc TyLoc) { return RetTy(); }
      56                 : };
      57                 : 
      58                 : #undef DISPATCH
      59                 : 
      60                 : }  // end namespace clang
      61                 : 
      62                 : #endif // LLVM_CLANG_AST_TYPELOCVISITOR_H

Generated: 2010-02-10 01:31 by zcov