LCOV - code coverage report
Current view: top level - src/lexicalAnalysis - type.cc (source / functions) Coverage Total Hit
Test: coverage.info Lines: 0.0 % 190 0
Test Date: 2025-04-18 15:53:49 Functions: 0.0 % 1 0

            Line data    Source code
       1              : #include "../../inc/lexicalAnalysis/type.h"
       2              : 
       3              : namespace nicole {
       4              : 
       5            0 : std::string tokenTypeToString(const TokenType &tk) noexcept {
       6            0 :   switch (tk) {
       7            0 :   case TokenType::SPACE:
       8            0 :     return "SPACE";
       9            0 :   case TokenType::COMMENT:
      10            0 :     return "COMMENT";
      11              : 
      12            0 :   case TokenType::NUMBER_FLOAT:
      13            0 :     return "NUMBER_FLOAT";
      14            0 :   case TokenType::NUMBER_DOUBLE:
      15            0 :     return "NUMBER_DOUBLE";
      16            0 :   case TokenType::NUMBER_INT:
      17            0 :     return "NUMBER_INT";
      18            0 :   case TokenType::CHAR:
      19            0 :     return "CHAR";
      20            0 :   case TokenType::STRING:
      21            0 :     return "STRING";
      22            0 :   case TokenType::TRUE:
      23            0 :     return "TRUE";
      24            0 :   case TokenType::FALSE:
      25            0 :     return "FALSE";
      26            0 :   case TokenType::NULLPTR:
      27            0 :     return "NULLPTR";
      28              : 
      29            0 :   case TokenType::TYPE_VOID:
      30            0 :     return "TYPE_VOID";
      31            0 :   case TokenType::TYPE_INT:
      32            0 :     return "TYPE_INT";
      33            0 :   case TokenType::TYPE_BOOL:
      34            0 :     return "TYPE_BOOL";
      35            0 :   case TokenType::TYPE_CHAR:
      36            0 :     return "TYPE_CHAR";
      37            0 :   case TokenType::TYPE_FLOAT:
      38            0 :     return "TYPE_FLOAT";
      39            0 :   case TokenType::TYPE_DOUBLE:
      40            0 :     return "TYPE_DOUBLE";
      41            0 :   case TokenType::TYPE_STR:
      42            0 :     return "TYPE_STR";
      43              : 
      44            0 :   case TokenType::LET:
      45            0 :     return "LET";
      46            0 :   case TokenType::CONST:
      47            0 :     return "CONST";
      48            0 :   case TokenType::AUTO:
      49            0 :     return "AUTO";
      50            0 :   case TokenType::PTR:
      51            0 :     return "PTR";
      52              : 
      53            0 :   case TokenType::VECTOR:
      54            0 :     return "VECTOR";
      55              : 
      56            0 :   case TokenType::NEW:
      57            0 :     return "NEW";
      58            0 :   case TokenType::DELETE:
      59            0 :     return "DELETE";
      60              : 
      61            0 :   case TokenType::IMPORT:
      62            0 :     return "IMPORT";
      63            0 :   case TokenType::PRINT:
      64            0 :     return "PRINT";
      65            0 :   case TokenType::SYSTEM:
      66            0 :     return "SYSTEM";
      67            0 :   case TokenType::TYPE:
      68            0 :     return "TYPE";
      69              : 
      70            0 :   case TokenType::IF:
      71            0 :     return "IF";
      72            0 :   case TokenType::ELSE:
      73            0 :     return "ELSE";
      74            0 :   case TokenType::SWITCH:
      75            0 :     return "SWITCH";
      76            0 :   case TokenType::CASE:
      77            0 :     return "CASE";
      78            0 :   case TokenType::DEFAULT:
      79            0 :     return "DEFAULT";
      80              : 
      81            0 :   case TokenType::WHILE:
      82            0 :     return "WHILE";
      83            0 :   case TokenType::FOR:
      84            0 :     return "FOR";
      85            0 :   case TokenType::DO:
      86            0 :     return "DO";
      87            0 :   case TokenType::STOP:
      88            0 :     return "STOP";
      89            0 :   case TokenType::PASS:
      90            0 :     return "PASS";
      91              : 
      92            0 :   case TokenType::RETURN:
      93            0 :     return "RETURN";
      94            0 :   case TokenType::FUNCTION:
      95            0 :     return "FUNCTION";
      96              : 
      97            0 :   case TokenType::ENUM:
      98            0 :     return "ENUM";
      99            0 :   case TokenType::STRUCT:
     100            0 :     return "STRUCT";
     101            0 :   case TokenType::CLASS:
     102            0 :     return "CLASS";
     103            0 :   case TokenType::PRIVATE:
     104            0 :     return "PRIVATE";
     105            0 :   case TokenType::PUBLIC:
     106            0 :     return "PUBLIC";
     107            0 :   case TokenType::PROTECTED:
     108            0 :     return "PROTECTED";
     109            0 :   case TokenType::EXTENDS:
     110            0 :     return "EXTENDS";
     111            0 :   case TokenType::METHOD:
     112            0 :     return "METHOD";
     113            0 :   case TokenType::ATTR:
     114            0 :     return "ATTR";
     115            0 :   case TokenType::THIS:
     116            0 :     return "THIS";
     117            0 :   case TokenType::OVERRIDE:
     118            0 :     return "OVERRIDE";
     119            0 :   case TokenType::CONSTRUCTOR:
     120            0 :     return "CONSTRUCTOR";
     121            0 :   case TokenType::DESTRUCTOR:
     122            0 :     return "DESTRUCTOR";
     123            0 :   case TokenType::SUPER:
     124            0 :     return "SUPER";
     125            0 :   case TokenType::VIRTUAL:
     126            0 :     return "VIRTUAL";
     127              : 
     128            0 :   case TokenType::OR:
     129            0 :     return "OR";
     130            0 :   case TokenType::AND:
     131            0 :     return "AND";
     132              : 
     133            0 :   case TokenType::ID:
     134            0 :     return "ID";
     135              : 
     136            0 :   case TokenType::RP:
     137            0 :     return "RP"; // Right Parenthesis ')'
     138            0 :   case TokenType::LP:
     139            0 :     return "LP"; // Left Parenthesis '('
     140            0 :   case TokenType::RB:
     141            0 :     return "RB"; // Right Bracket ']'
     142            0 :   case TokenType::LB:
     143            0 :     return "LB"; // Left Bracket '['
     144            0 :   case TokenType::RC:
     145            0 :     return "RC"; // Right Curly Brace '}'
     146            0 :   case TokenType::LC:
     147            0 :     return "LC"; // Left Curly Brace '{'
     148              : 
     149            0 :   case TokenType::SEMICOLON:
     150            0 :     return "SEMICOLON";
     151              : 
     152            0 :   case TokenType::COMMA:
     153            0 :     return "COMMA";
     154              : 
     155            0 :   case TokenType::TERNARY:
     156            0 :     return "TERNARY";
     157              : 
     158            0 :   case TokenType::DOT:
     159            0 :     return "DOT";
     160            0 :   case TokenType::DOTDOT:
     161            0 :     return "DOTDOT"; // :
     162              : 
     163            0 :   case TokenType::SMALLEREQUAL:
     164            0 :     return "SMALLEREQUAL";
     165            0 :   case TokenType::BIGGEREQUAL:
     166            0 :     return "BIGGEREQUAL";
     167            0 :   case TokenType::NOTEQUAL:
     168            0 :     return "NOTEQUAL";
     169            0 :   case TokenType::EQUAL:
     170            0 :     return "EQUAL";
     171            0 :   case TokenType::ASSIGNMENT:
     172            0 :     return "ASSIGNMENT"; // '='
     173              : 
     174            0 :   case TokenType::INCREMENT:
     175            0 :     return "INCREMENT"; // '++'
     176            0 :   case TokenType::DECREMENT:
     177            0 :     return "DECREMENT"; // '--'
     178              : 
     179            0 :   case TokenType::OPERATOR_ADD:
     180            0 :     return "OPERATOR_ADD"; // '+'
     181            0 :   case TokenType::OPERATOR_SUB:
     182            0 :     return "OPERATOR_SUB"; // '-'
     183            0 :   case TokenType::OPERATOR_MULT:
     184            0 :     return "OPERATOR_MULT"; // '*'
     185            0 :   case TokenType::OPERATOR_DIV:
     186            0 :     return "OPERATOR_DIV"; // '/'
     187            0 :   case TokenType::OPERATOR_SMALLER:
     188            0 :     return "OPERATOR_SMALLER"; // '<'
     189            0 :   case TokenType::OPERATOR_GREATER:
     190            0 :     return "OPERATOR_GREATER"; // '>'
     191            0 :   case TokenType::OPERATOR_NOT:
     192            0 :     return "OPERATOR_NOT"; // '!'
     193            0 :   case TokenType::OPERATOR_MODULE:
     194            0 :     return "OPERATOR_MODULE"; // '%'
     195              : 
     196            0 :   case TokenType::SELF_ADD:
     197            0 :     return "SELF_ADD";
     198            0 :   case TokenType::SELF_SUB:
     199            0 :     return "SELF_SUB";
     200            0 :   case TokenType::SELF_MULT:
     201            0 :     return "SELF_MULT";
     202            0 :   case TokenType::SELF_DIV:
     203            0 :     return "SELF_DIV";
     204            0 :   case TokenType::DOTDOT_ASSIGNMENT:
     205            0 :     return "DOTDOT_ASSIGNMENT";
     206              : 
     207            0 :   case TokenType::MAIN:
     208            0 :     return "SELF_DIV";
     209              : 
     210            0 :   case TokenType::UNMATCHED:
     211            0 :     return "UNMATCHED"; // For unrecognized tokens
     212            0 :   case TokenType::ALL:
     213            0 :     return "ALL"; // Catch-all case for all tokens
     214            0 :   default:
     215            0 :     return "UNKNOWN"; // In case of an unrecognized token type
     216            0 :   }
     217            0 : }
     218              : 
     219              : } // namespace nicole
        

Generated by: LCOV version 2.0-1