LCOV - code coverage report
Current view: top level - src/interfaces/ecpg/preproc - ecpg_kwlist_d.h (source / functions) Coverage Total Hit
Test: PostgreSQL 20devel Lines: 100.0 % 9 9
Test Date: 2026-07-12 23:15:38 Functions: 100.0 % 1 1
Legend: Lines:     hit not hit
Branches: + taken - not taken # not executed
Branches: 100.0 % 2 2

             Branch data     Line data    Source code
       1                 :             : /*-------------------------------------------------------------------------
       2                 :             :  *
       3                 :             :  * ecpg_kwlist_d.h
       4                 :             :  *    List of keywords represented as a ScanKeywordList.
       5                 :             :  *
       6                 :             :  * Portions Copyright (c) 1996-2026, PostgreSQL Global Development Group
       7                 :             :  * Portions Copyright (c) 1994, Regents of the University of California
       8                 :             :  *
       9                 :             :  * NOTES
      10                 :             :  *  ******************************
      11                 :             :  *  *** DO NOT EDIT THIS FILE! ***
      12                 :             :  *  ******************************
      13                 :             :  *
      14                 :             :  *  It has been GENERATED by src/tools/gen_keywordlist.pl
      15                 :             :  *
      16                 :             :  *-------------------------------------------------------------------------
      17                 :             :  */
      18                 :             : 
      19                 :             : #ifndef ECPG_KWLIST_D_H
      20                 :             : #define ECPG_KWLIST_D_H
      21                 :             : 
      22                 :             : #include "common/kwlookup.h"
      23                 :             : 
      24                 :             : static const char ScanECPGKeywords_kw_string[] =
      25                 :             :     "allocate\0"
      26                 :             :     "autocommit\0"
      27                 :             :     "bool\0"
      28                 :             :     "break\0"
      29                 :             :     "cardinality\0"
      30                 :             :     "connect\0"
      31                 :             :     "count\0"
      32                 :             :     "datetime_interval_code\0"
      33                 :             :     "datetime_interval_precision\0"
      34                 :             :     "describe\0"
      35                 :             :     "descriptor\0"
      36                 :             :     "disconnect\0"
      37                 :             :     "found\0"
      38                 :             :     "free\0"
      39                 :             :     "get\0"
      40                 :             :     "go\0"
      41                 :             :     "goto\0"
      42                 :             :     "identified\0"
      43                 :             :     "indicator\0"
      44                 :             :     "key_member\0"
      45                 :             :     "length\0"
      46                 :             :     "long\0"
      47                 :             :     "nullable\0"
      48                 :             :     "octet_length\0"
      49                 :             :     "open\0"
      50                 :             :     "output\0"
      51                 :             :     "reference\0"
      52                 :             :     "returned_length\0"
      53                 :             :     "returned_octet_length\0"
      54                 :             :     "scale\0"
      55                 :             :     "section\0"
      56                 :             :     "short\0"
      57                 :             :     "signed\0"
      58                 :             :     "sqlerror\0"
      59                 :             :     "sqlprint\0"
      60                 :             :     "sqlwarning\0"
      61                 :             :     "stop\0"
      62                 :             :     "struct\0"
      63                 :             :     "unsigned\0"
      64                 :             :     "var\0"
      65                 :             :     "whenever";
      66                 :             : 
      67                 :             : static const uint16 ScanECPGKeywords_kw_offsets[] = {
      68                 :             :     0,
      69                 :             :     9,
      70                 :             :     20,
      71                 :             :     25,
      72                 :             :     31,
      73                 :             :     43,
      74                 :             :     51,
      75                 :             :     57,
      76                 :             :     80,
      77                 :             :     108,
      78                 :             :     117,
      79                 :             :     128,
      80                 :             :     139,
      81                 :             :     145,
      82                 :             :     150,
      83                 :             :     154,
      84                 :             :     157,
      85                 :             :     162,
      86                 :             :     173,
      87                 :             :     183,
      88                 :             :     194,
      89                 :             :     201,
      90                 :             :     206,
      91                 :             :     215,
      92                 :             :     228,
      93                 :             :     233,
      94                 :             :     240,
      95                 :             :     250,
      96                 :             :     266,
      97                 :             :     288,
      98                 :             :     294,
      99                 :             :     302,
     100                 :             :     308,
     101                 :             :     315,
     102                 :             :     324,
     103                 :             :     333,
     104                 :             :     344,
     105                 :             :     349,
     106                 :             :     356,
     107                 :             :     365,
     108                 :             :     369,
     109                 :             : };
     110                 :             : 
     111                 :             : #define SCANECPGKEYWORDS_NUM_KEYWORDS 41
     112                 :             : 
     113                 :             : static int
     114                 :        2678 : ScanECPGKeywords_hash_func(const void *key, size_t keylen)
     115                 :             : {
     116                 :             :     static const int8 h[83] = {
     117                 :             :         0,     24,    127,   127,   3,     13,    -21,   127,
     118                 :             :         0,     20,    2,     18,    24,    32,    127,   0,
     119                 :             :         127,   127,   22,    127,   127,   127,   -23,   127,
     120                 :             :         127,   0,     127,   127,   127,   -8,    22,    1,
     121                 :             :         0,     7,     0,     6,     16,    34,    127,   127,
     122                 :             :         16,    0,     44,    127,   127,   127,   -12,   127,
     123                 :             :         21,    18,    0,     127,   -9,    28,    7,     4,
     124                 :             :         127,   26,    127,   14,    127,   -8,    127,   29,
     125                 :             :         127,   0,     0,     38,    127,   9,     25,    0,
     126                 :             :         0,     127,   15,    20,    127,   7,     -1,    5,
     127                 :             :         19,    127,   11
     128                 :             :     };
     129                 :             : 
     130                 :        2678 :     const unsigned char *k = (const unsigned char *) key;
     131                 :        2678 :     uint32      a = 0;
     132                 :        2678 :     uint32      b = 0;
     133                 :             : 
     134         [ +  + ]:       19598 :     while (keylen--)
     135                 :             :     {
     136                 :       16920 :         unsigned char c = *k++ | 0x20;
     137                 :             : 
     138                 :       16920 :         a = a * 257 + c;
     139                 :       16920 :         b = b * 31 + c;
     140                 :             :     }
     141                 :        2678 :     return h[a % 83] + h[b % 83];
     142                 :             : }
     143                 :             : 
     144                 :             : static const ScanKeywordList ScanECPGKeywords = {
     145                 :             :     ScanECPGKeywords_kw_string,
     146                 :             :     ScanECPGKeywords_kw_offsets,
     147                 :             :     ScanECPGKeywords_hash_func,
     148                 :             :     SCANECPGKEYWORDS_NUM_KEYWORDS,
     149                 :             :     27
     150                 :             : };
     151                 :             : 
     152                 :             : #endif                          /* ECPG_KWLIST_D_H */
        

Generated by: LCOV version 2.0-1