LCOV - code coverage report
Current view: top level - lib - c-ctype.c (source / functions) Hit Total Coverage
Test: coreutils.info Lines: 2 35 5.7 %
Date: 2018-01-30 Functions: 1 15 6.7 %

          Line data    Source code
       1             : /* -*- buffer-read-only: t -*- vi: set ro: */
       2             : /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
       3             : #line 1
       4             : /* Character handling in C locale.
       5             : 
       6             :    Copyright 2000-2003, 2006 Free Software Foundation, Inc.
       7             : 
       8             : This program is free software; you can redistribute it and/or modify
       9             : it under the terms of the GNU General Public License as published by
      10             : the Free Software Foundation; either version 3 of the License, or
      11             : (at your option) any later version.
      12             : 
      13             : This program is distributed in the hope that it will be useful,
      14             : but WITHOUT ANY WARRANTY; without even the implied warranty of
      15             : MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
      16             : GNU General Public License for more details.
      17             : 
      18             : You should have received a copy of the GNU General Public License
      19             : along with this program; if not, write to the Free Software Foundation,
      20             : Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.  */
      21             : 
      22             : #include <config.h>
      23             : 
      24             : /* Specification.  */
      25             : #define NO_C_CTYPE_MACROS
      26             : #include "c-ctype.h"
      27             : 
      28           0 : /* The function isascii is not locale dependent. Its use in EBCDIC is
      29             :    questionable. */
      30           0 : bool
      31             : c_isascii (int c)
      32             : {
      33             :   return (c >= 0x00 && c <= 0x7f);
      34           0 : }
      35             : 
      36             : bool
      37             : c_isalnum (int c)
      38             : {
      39           0 : #if C_CTYPE_CONSECUTIVE_DIGITS \
      40           0 :     && C_CTYPE_CONSECUTIVE_UPPERCASE && C_CTYPE_CONSECUTIVE_LOWERCASE
      41             : #if C_CTYPE_ASCII
      42             :   return ((c >= '0' && c <= '9')
      43             :           || ((c & ~0x20) >= 'A' && (c & ~0x20) <= 'Z'));
      44             : #else
      45             :   return ((c >= '0' && c <= '9')
      46             :           || (c >= 'A' && c <= 'Z')
      47             :           || (c >= 'a' && c <= 'z'));
      48             : #endif
      49             : #else
      50             :   switch (c)
      51             :     {
      52             :     case '0': case '1': case '2': case '3': case '4': case '5':
      53             :     case '6': case '7': case '8': case '9':
      54             :     case 'A': case 'B': case 'C': case 'D': case 'E': case 'F':
      55             :     case 'G': case 'H': case 'I': case 'J': case 'K': case 'L':
      56             :     case 'M': case 'N': case 'O': case 'P': case 'Q': case 'R':
      57             :     case 'S': case 'T': case 'U': case 'V': case 'W': case 'X':
      58             :     case 'Y': case 'Z':
      59             :     case 'a': case 'b': case 'c': case 'd': case 'e': case 'f':
      60             :     case 'g': case 'h': case 'i': case 'j': case 'k': case 'l':
      61             :     case 'm': case 'n': case 'o': case 'p': case 'q': case 'r':
      62             :     case 's': case 't': case 'u': case 'v': case 'w': case 'x':
      63             :     case 'y': case 'z':
      64             :       return 1;
      65             :     default:
      66             :       return 0;
      67             :     }
      68             : #endif
      69           0 : }
      70             : 
      71             : bool
      72             : c_isalpha (int c)
      73           0 : {
      74             : #if C_CTYPE_CONSECUTIVE_UPPERCASE && C_CTYPE_CONSECUTIVE_LOWERCASE
      75             : #if C_CTYPE_ASCII
      76             :   return ((c & ~0x20) >= 'A' && (c & ~0x20) <= 'Z');
      77             : #else
      78             :   return ((c >= 'A' && c <= 'Z') || (c >= 'a' && c <= 'z'));
      79             : #endif
      80             : #else
      81             :   switch (c)
      82             :     {
      83             :     case 'A': case 'B': case 'C': case 'D': case 'E': case 'F':
      84             :     case 'G': case 'H': case 'I': case 'J': case 'K': case 'L':
      85             :     case 'M': case 'N': case 'O': case 'P': case 'Q': case 'R':
      86             :     case 'S': case 'T': case 'U': case 'V': case 'W': case 'X':
      87             :     case 'Y': case 'Z':
      88             :     case 'a': case 'b': case 'c': case 'd': case 'e': case 'f':
      89             :     case 'g': case 'h': case 'i': case 'j': case 'k': case 'l':
      90             :     case 'm': case 'n': case 'o': case 'p': case 'q': case 'r':
      91             :     case 's': case 't': case 'u': case 'v': case 'w': case 'x':
      92             :     case 'y': case 'z':
      93             :       return 1;
      94             :     default:
      95             :       return 0;
      96             :     }
      97             : #endif
      98           0 : }
      99             : 
     100           0 : bool
     101             : c_isblank (int c)
     102             : {
     103             :   return (c == ' ' || c == '\t');
     104           0 : }
     105             : 
     106             : bool
     107           0 : c_iscntrl (int c)
     108             : {
     109             : #if C_CTYPE_ASCII
     110             :   return ((c & ~0x1f) == 0 || c == 0x7f);
     111             : #else
     112             :   switch (c)
     113             :     {
     114             :     case ' ': case '!': case '"': case '#': case '$': case '%':
     115             :     case '&': case '\'': case '(': case ')': case '*': case '+':
     116             :     case ',': case '-': case '.': case '/':
     117             :     case '0': case '1': case '2': case '3': case '4': case '5':
     118             :     case '6': case '7': case '8': case '9':
     119             :     case ':': case ';': case '<': case '=': case '>': case '?':
     120             :     case '@':
     121             :     case 'A': case 'B': case 'C': case 'D': case 'E': case 'F':
     122             :     case 'G': case 'H': case 'I': case 'J': case 'K': case 'L':
     123             :     case 'M': case 'N': case 'O': case 'P': case 'Q': case 'R':
     124             :     case 'S': case 'T': case 'U': case 'V': case 'W': case 'X':
     125             :     case 'Y': case 'Z':
     126             :     case '[': case '\\': case ']': case '^': case '_': case '`':
     127             :     case 'a': case 'b': case 'c': case 'd': case 'e': case 'f':
     128             :     case 'g': case 'h': case 'i': case 'j': case 'k': case 'l':
     129             :     case 'm': case 'n': case 'o': case 'p': case 'q': case 'r':
     130             :     case 's': case 't': case 'u': case 'v': case 'w': case 'x':
     131             :     case 'y': case 'z':
     132             :     case '{': case '|': case '}': case '~':
     133             :       return 0;
     134             :     default:
     135             :       return 1;
     136             :     }
     137             : #endif
     138           0 : }
     139             : 
     140             : bool
     141           0 : c_isdigit (int c)
     142             : {
     143             : #if C_CTYPE_CONSECUTIVE_DIGITS
     144             :   return (c >= '0' && c <= '9');
     145             : #else
     146             :   switch (c)
     147             :     {
     148             :     case '0': case '1': case '2': case '3': case '4': case '5':
     149             :     case '6': case '7': case '8': case '9':
     150             :       return 1;
     151             :     default:
     152             :       return 0;
     153             :     }
     154             : #endif
     155           0 : }
     156             : 
     157             : bool
     158           0 : c_islower (int c)
     159             : {
     160             : #if C_CTYPE_CONSECUTIVE_LOWERCASE
     161             :   return (c >= 'a' && c <= 'z');
     162             : #else
     163             :   switch (c)
     164             :     {
     165             :     case 'a': case 'b': case 'c': case 'd': case 'e': case 'f':
     166             :     case 'g': case 'h': case 'i': case 'j': case 'k': case 'l':
     167             :     case 'm': case 'n': case 'o': case 'p': case 'q': case 'r':
     168             :     case 's': case 't': case 'u': case 'v': case 'w': case 'x':
     169             :     case 'y': case 'z':
     170             :       return 1;
     171             :     default:
     172             :       return 0;
     173             :     }
     174             : #endif
     175           0 : }
     176             : 
     177             : bool
     178           0 : c_isgraph (int c)
     179             : {
     180             : #if C_CTYPE_ASCII
     181             :   return (c >= '!' && c <= '~');
     182             : #else
     183             :   switch (c)
     184             :     {
     185             :     case '!': case '"': case '#': case '$': case '%': case '&':
     186             :     case '\'': case '(': case ')': case '*': case '+': case ',':
     187             :     case '-': case '.': case '/':
     188             :     case '0': case '1': case '2': case '3': case '4': case '5':
     189             :     case '6': case '7': case '8': case '9':
     190             :     case ':': case ';': case '<': case '=': case '>': case '?':
     191             :     case '@':
     192             :     case 'A': case 'B': case 'C': case 'D': case 'E': case 'F':
     193             :     case 'G': case 'H': case 'I': case 'J': case 'K': case 'L':
     194             :     case 'M': case 'N': case 'O': case 'P': case 'Q': case 'R':
     195             :     case 'S': case 'T': case 'U': case 'V': case 'W': case 'X':
     196             :     case 'Y': case 'Z':
     197             :     case '[': case '\\': case ']': case '^': case '_': case '`':
     198             :     case 'a': case 'b': case 'c': case 'd': case 'e': case 'f':
     199             :     case 'g': case 'h': case 'i': case 'j': case 'k': case 'l':
     200             :     case 'm': case 'n': case 'o': case 'p': case 'q': case 'r':
     201             :     case 's': case 't': case 'u': case 'v': case 'w': case 'x':
     202             :     case 'y': case 'z':
     203             :     case '{': case '|': case '}': case '~':
     204             :       return 1;
     205             :     default:
     206             :       return 0;
     207             :     }
     208             : #endif
     209           0 : }
     210             : 
     211             : bool
     212           0 : c_isprint (int c)
     213             : {
     214             : #if C_CTYPE_ASCII
     215             :   return (c >= ' ' && c <= '~');
     216             : #else
     217             :   switch (c)
     218             :     {
     219             :     case ' ': case '!': case '"': case '#': case '$': case '%':
     220             :     case '&': case '\'': case '(': case ')': case '*': case '+':
     221             :     case ',': case '-': case '.': case '/':
     222             :     case '0': case '1': case '2': case '3': case '4': case '5':
     223             :     case '6': case '7': case '8': case '9':
     224             :     case ':': case ';': case '<': case '=': case '>': case '?':
     225             :     case '@':
     226             :     case 'A': case 'B': case 'C': case 'D': case 'E': case 'F':
     227             :     case 'G': case 'H': case 'I': case 'J': case 'K': case 'L':
     228             :     case 'M': case 'N': case 'O': case 'P': case 'Q': case 'R':
     229             :     case 'S': case 'T': case 'U': case 'V': case 'W': case 'X':
     230             :     case 'Y': case 'Z':
     231             :     case '[': case '\\': case ']': case '^': case '_': case '`':
     232             :     case 'a': case 'b': case 'c': case 'd': case 'e': case 'f':
     233             :     case 'g': case 'h': case 'i': case 'j': case 'k': case 'l':
     234             :     case 'm': case 'n': case 'o': case 'p': case 'q': case 'r':
     235             :     case 's': case 't': case 'u': case 'v': case 'w': case 'x':
     236             :     case 'y': case 'z':
     237             :     case '{': case '|': case '}': case '~':
     238             :       return 1;
     239             :     default:
     240             :       return 0;
     241             :     }
     242             : #endif
     243           0 : }
     244             : 
     245             : bool
     246           0 : c_ispunct (int c)
     247           0 : {
     248           0 : #if C_CTYPE_ASCII
     249             :   return ((c >= '!' && c <= '~')
     250             :           && !((c >= '0' && c <= '9')
     251             :                || ((c & ~0x20) >= 'A' && (c & ~0x20) <= 'Z')));
     252             : #else
     253             :   switch (c)
     254             :     {
     255             :     case '!': case '"': case '#': case '$': case '%': case '&':
     256             :     case '\'': case '(': case ')': case '*': case '+': case ',':
     257             :     case '-': case '.': case '/':
     258             :     case ':': case ';': case '<': case '=': case '>': case '?':
     259             :     case '@':
     260             :     case '[': case '\\': case ']': case '^': case '_': case '`':
     261             :     case '{': case '|': case '}': case '~':
     262             :       return 1;
     263             :     default:
     264             :       return 0;
     265             :     }
     266             : #endif
     267           0 : }
     268             : 
     269           0 : bool
     270           0 : c_isspace (int c)
     271             : {
     272             :   return (c == ' ' || c == '\t'
     273             :           || c == '\n' || c == '\v' || c == '\f' || c == '\r');
     274           0 : }
     275             : 
     276             : bool
     277           0 : c_isupper (int c)
     278             : {
     279             : #if C_CTYPE_CONSECUTIVE_UPPERCASE
     280             :   return (c >= 'A' && c <= 'Z');
     281             : #else
     282             :   switch (c)
     283             :     {
     284             :     case 'A': case 'B': case 'C': case 'D': case 'E': case 'F':
     285             :     case 'G': case 'H': case 'I': case 'J': case 'K': case 'L':
     286             :     case 'M': case 'N': case 'O': case 'P': case 'Q': case 'R':
     287             :     case 'S': case 'T': case 'U': case 'V': case 'W': case 'X':
     288             :     case 'Y': case 'Z':
     289             :       return 1;
     290             :     default:
     291             :       return 0;
     292             :     }
     293             : #endif
     294           0 : }
     295             : 
     296             : bool
     297             : c_isxdigit (int c)
     298             : {
     299           0 : #if C_CTYPE_CONSECUTIVE_DIGITS \
     300           0 :     && C_CTYPE_CONSECUTIVE_UPPERCASE && C_CTYPE_CONSECUTIVE_LOWERCASE
     301             : #if C_CTYPE_ASCII
     302             :   return ((c >= '0' && c <= '9')
     303             :           || ((c & ~0x20) >= 'A' && (c & ~0x20) <= 'F'));
     304             : #else
     305             :   return ((c >= '0' && c <= '9')
     306             :           || (c >= 'A' && c <= 'F')
     307             :           || (c >= 'a' && c <= 'f'));
     308             : #endif
     309             : #else
     310             :   switch (c)
     311             :     {
     312             :     case '0': case '1': case '2': case '3': case '4': case '5':
     313             :     case '6': case '7': case '8': case '9':
     314             :     case 'A': case 'B': case 'C': case 'D': case 'E': case 'F':
     315             :     case 'a': case 'b': case 'c': case 'd': case 'e': case 'f':
     316             :       return 1;
     317             :     default:
     318             :       return 0;
     319             :     }
     320             : #endif
     321        3016 : }
     322             : 
     323             : int
     324        3016 : c_tolower (int c)
     325             : {
     326             : #if C_CTYPE_CONSECUTIVE_UPPERCASE && C_CTYPE_CONSECUTIVE_LOWERCASE
     327             :   return (c >= 'A' && c <= 'Z' ? c - 'A' + 'a' : c);
     328             : #else
     329             :   switch (c)
     330             :     {
     331             :     case 'A': return 'a';
     332             :     case 'B': return 'b';
     333             :     case 'C': return 'c';
     334             :     case 'D': return 'd';
     335             :     case 'E': return 'e';
     336             :     case 'F': return 'f';
     337             :     case 'G': return 'g';
     338             :     case 'H': return 'h';
     339             :     case 'I': return 'i';
     340             :     case 'J': return 'j';
     341             :     case 'K': return 'k';
     342             :     case 'L': return 'l';
     343             :     case 'M': return 'm';
     344             :     case 'N': return 'n';
     345             :     case 'O': return 'o';
     346             :     case 'P': return 'p';
     347             :     case 'Q': return 'q';
     348             :     case 'R': return 'r';
     349             :     case 'S': return 's';
     350             :     case 'T': return 't';
     351             :     case 'U': return 'u';
     352             :     case 'V': return 'v';
     353             :     case 'W': return 'w';
     354             :     case 'X': return 'x';
     355             :     case 'Y': return 'y';
     356             :     case 'Z': return 'z';
     357             :     default: return c;
     358             :     }
     359             : #endif
     360           0 : }
     361             : 
     362             : int
     363           0 : c_toupper (int c)
     364             : {
     365             : #if C_CTYPE_CONSECUTIVE_UPPERCASE && C_CTYPE_CONSECUTIVE_LOWERCASE
     366             :   return (c >= 'a' && c <= 'z' ? c - 'a' + 'A' : c);
     367             : #else
     368             :   switch (c)
     369             :     {
     370             :     case 'a': return 'A';
     371             :     case 'b': return 'B';
     372             :     case 'c': return 'C';
     373             :     case 'd': return 'D';
     374             :     case 'e': return 'E';
     375             :     case 'f': return 'F';
     376             :     case 'g': return 'G';
     377             :     case 'h': return 'H';
     378             :     case 'i': return 'I';
     379             :     case 'j': return 'J';
     380             :     case 'k': return 'K';
     381             :     case 'l': return 'L';
     382             :     case 'm': return 'M';
     383             :     case 'n': return 'N';
     384             :     case 'o': return 'O';
     385             :     case 'p': return 'P';
     386             :     case 'q': return 'Q';
     387             :     case 'r': return 'R';
     388             :     case 's': return 'S';
     389             :     case 't': return 'T';
     390             :     case 'u': return 'U';
     391             :     case 'v': return 'V';
     392             :     case 'w': return 'W';
     393             :     case 'x': return 'X';
     394             :     case 'y': return 'Y';
     395             :     case 'z': return 'Z';
     396             :     default: return c;
     397             :     }
     398             : #endif
     399             : }

Generated by: LCOV version 1.10