LCOV - code coverage report
Current view: top level - src/pl/plpgsql/src - pl_reserved_kwlist_d.h (source / functions) Hit Total Coverage
Test: PostgreSQL 19devel Lines: 9 9 100.0 %
Date: 2026-02-11 00:17:59 Functions: 1 1 100.0 %
Legend: Lines: hit not hit

          Line data    Source code
       1             : /*-------------------------------------------------------------------------
       2             :  *
       3             :  * pl_reserved_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 PL_RESERVED_KWLIST_D_H
      20             : #define PL_RESERVED_KWLIST_D_H
      21             : 
      22             : #include "common/kwlookup.h"
      23             : 
      24             : static const char ReservedPLKeywords_kw_string[] =
      25             :     "all\0"
      26             :     "begin\0"
      27             :     "by\0"
      28             :     "case\0"
      29             :     "declare\0"
      30             :     "else\0"
      31             :     "end\0"
      32             :     "for\0"
      33             :     "foreach\0"
      34             :     "from\0"
      35             :     "if\0"
      36             :     "in\0"
      37             :     "into\0"
      38             :     "loop\0"
      39             :     "not\0"
      40             :     "null\0"
      41             :     "or\0"
      42             :     "then\0"
      43             :     "to\0"
      44             :     "using\0"
      45             :     "when\0"
      46             :     "while";
      47             : 
      48             : static const uint16 ReservedPLKeywords_kw_offsets[] = {
      49             :     0,
      50             :     4,
      51             :     10,
      52             :     13,
      53             :     18,
      54             :     26,
      55             :     31,
      56             :     35,
      57             :     39,
      58             :     47,
      59             :     52,
      60             :     55,
      61             :     58,
      62             :     63,
      63             :     68,
      64             :     72,
      65             :     77,
      66             :     80,
      67             :     85,
      68             :     88,
      69             :     94,
      70             :     99,
      71             : };
      72             : 
      73             : #define RESERVEDPLKEYWORDS_NUM_KEYWORDS 22
      74             : 
      75             : static int
      76      196394 : ReservedPLKeywords_hash_func(const void *key, size_t keylen)
      77             : {
      78             :     static const int8 h[45] = {
      79             :         -7,    127,   -19,   127,   127,   11,    127,   -1,
      80             :         127,   2,     127,   127,   7,     -14,   127,   127,
      81             :         127,   0,     127,   127,   127,   23,    14,    127,
      82             :         0,     15,    -6,    0,     15,    27,    127,   -6,
      83             :         127,   13,    2,     0,     127,   -1,    16,    4,
      84             :         127,   4,     10,    18,    127
      85             :     };
      86             : 
      87      196394 :     const unsigned char *k = (const unsigned char *) key;
      88      196394 :     uint32      a = 0;
      89      196394 :     uint32      b = 0;
      90             : 
      91      993768 :     while (keylen--)
      92             :     {
      93      797374 :         unsigned char c = *k++ | 0x20;
      94             : 
      95      797374 :         a = a * 257 + c;
      96      797374 :         b = b * 31 + c;
      97             :     }
      98      196394 :     return h[a % 45] + h[b % 45];
      99             : }
     100             : 
     101             : static const ScanKeywordList ReservedPLKeywords = {
     102             :     ReservedPLKeywords_kw_string,
     103             :     ReservedPLKeywords_kw_offsets,
     104             :     ReservedPLKeywords_hash_func,
     105             :     RESERVEDPLKEYWORDS_NUM_KEYWORDS,
     106             :     7
     107             : };
     108             : 
     109             : #endif                          /* PL_RESERVED_KWLIST_D_H */

Generated by: LCOV version 1.16