LTP GCOV extension - code coverage report
Current view: directory - src/cpp/dev/idlc - symbol.cpp
Test: YAORB-0.2.info
Date: 2006-02-27 Instrumented lines: 53
Code covered: 75.5 % Executed lines: 40

       1                 : //==============================================================================
       2                 : // File <$/src/cpp/dev/idlc/symbol.cpp>
       3                 : // This file is part of YaOrb : Yet Another Object Request Broker,
       4                 : // Copyright (c) 2000-2003, Marc Alff.
       5                 : //
       6                 : // This program is free software; you can redistribute it and/or
       7                 : // modify it under the terms of the GNU General Public License
       8                 : // as published by the Free Software Foundation; either version 2
       9                 : // of the License, or (at your option) any later version.
      10                 : //
      11                 : // This program is distributed in the hope that it will be useful,
      12                 : // but WITHOUT ANY WARRANTY; without even the implied warranty of
      13                 : // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
      14                 : // GNU General Public License for more details.
      15                 : //
      16                 : // You should have received a copy of the GNU General Public License
      17                 : // along with this program; if not, write to the Free Software
      18                 : // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
      19                 : //
      20                 : //==============================================================================
      21                 : 
      22                 : #include <stdio.h>
      23                 : 
      24                 : #include "src/cpp/dev/idlc/symbol.h"
      25                 : 
      26           12845 : Symbol::Symbol(const String& aName, SymbolClass_e aClass)
      27                 : :
      28                 :    _name(aName),
      29                 :    _ir(),
      30                 :    _prefix(),
      31                 :    _fullyQualifiedName(aName),
      32                 :    _class(aClass),
      33           12845 :    _hook(NULL)
      34                 : {
      35                 :    // FIXME : Setting default RepositoryID
      36           12845 :    _ir = aName ;
      37               0 : }
      38                 : 
      39           12844 : Symbol::~Symbol()
      40           12844 : {}
      41                 : 
      42           11341 : void* Symbol::GetHook(void) const
      43                 : {
      44                 :    return _hook ;
      45                 : }
      46                 : 
      47            2773 : void Symbol::SetHook(void *hook)
      48                 : {
      49            2773 :    _hook = hook ;
      50                 : }
      51                 : 
      52          730328 : const String& Symbol::GetName(void) const
      53                 : {
      54                 :    return _name ;
      55                 : }
      56                 : 
      57            4847 : const String& Symbol::GetFullyQualifiedName(void) const
      58                 : {
      59                 :    return _fullyQualifiedName ;
      60                 : }
      61                 : 
      62           12845 : void Symbol::SetFullyQualifiedName(const String& name)
      63                 : {
      64           12845 :    _fullyQualifiedName = name ;
      65                 : }
      66                 : 
      67              65 : const String& Symbol::GetPrefix() const
      68                 : {
      69                 :    return _prefix ;
      70                 : }
      71                 : 
      72           12845 : void Symbol::SetPrefix(const String& prefix)
      73                 : {
      74           12845 :    _prefix = prefix ;
      75                 : }
      76                 : 
      77             186 : const String& Symbol::GetInterfaceRepositoryID(void) const
      78                 : {
      79                 :    return _ir ;
      80                 : }
      81                 : 
      82               0 : void Symbol::SetInterfaceRepositoryID(const String& ir)
      83                 : {
      84               0 :    _ir = ir ;
      85                 : }
      86                 : 
      87           14004 : SymbolClass_e Symbol::GetClass(void) const
      88                 : {
      89                 :    return _class ;
      90                 : }
      91                 : 
      92              68 : void Symbol::print(std::ostream &str) const
      93                 : {
      94              68 :    switch (_class)
      95                 :    {
      96                 :       case moduleSymbol :
      97                 :       {
      98              13 :          str << "module" ;
      99              13 :          break ;
     100                 :       }
     101                 :       case interfaceSymbol :
     102                 :       {
     103              38 :          str << "interface" ;
     104              38 :          break ;
     105                 :       }
     106                 :       case attributeSymbol :
     107                 :       {
     108               9 :          str << "attribute" ;
     109               9 :          break ;
     110                 :       }
     111                 :       case operationSymbol :
     112                 :       {
     113               2 :          str << "operation" ;
     114               2 :          break ;
     115                 :       }
     116                 :       case parameterSymbol :
     117                 :       {
     118               1 :          str << "parameter" ;
     119               1 :          break ;
     120                 :       }
     121                 :       case typedefSymbol :
     122                 :       {
     123               0 :          str << "typedef" ;
     124               0 :          break ;
     125                 :       }
     126                 :       case structSymbol :
     127                 :       {
     128               0 :          str << "struct" ;
     129               0 :          break ;
     130                 :       }
     131                 :       case memberSymbol :
     132                 :       {
     133               1 :          str << "struct member" ;
     134               1 :          break ;
     135                 :       }
     136                 :       case unionSymbol :
     137                 :       {
     138               0 :          str << "union" ;
     139               0 :          break ;
     140                 :       }
     141                 :       case constantSymbol :
     142                 :       {
     143               0 :          str << "constant" ;
     144               0 :          break ;
     145                 :       }
     146                 :       case enumSymbol :
     147                 :       {
     148               1 :          str << "enum" ;
     149               1 :          break ;
     150                 :       }
     151                 :       case enumItemSymbol :
     152                 :       {
     153               1 :          str << "enum item" ;
     154               1 :          break ;
     155                 :       }
     156                 :       case exceptionSymbol :
     157                 :       {
     158               2 :          str << "exception" ;
     159               2 :          break ;
     160                 :       }
     161                 :       case nativeSymbol :
     162                 :       {
     163               0 :          str << "native" ;
     164                 :          break ;
     165                 :       }
     166                 :    }
     167                 : 
     168              68 :    str << " " << _name ;
     169              63 : }
     170              63 : 
     171               0 : 

Generated by: LTP GCOV extension version 1.4