zombiezen.com/go/lua@v0.0.0-20231013005828-290725fb9140/internal/lua54/lctype.c (about)

     1  /*
     2  ** $Id: lctype.c $
     3  ** 'ctype' functions for Lua
     4  ** See Copyright Notice in lua.h
     5  */
     6  
     7  #define lctype_c
     8  #define LUA_CORE
     9  
    10  #include "lprefix.h"
    11  
    12  
    13  #include "lctype.h"
    14  
    15  #if !LUA_USE_CTYPE	/* { */
    16  
    17  #include <limits.h>
    18  
    19  
    20  #if defined (LUA_UCID)		/* accept UniCode IDentifiers? */
    21  /* consider all non-ascii codepoints to be alphabetic */
    22  #define NONA		0x01
    23  #else
    24  #define NONA		0x00	/* default */
    25  #endif
    26  
    27  
    28  LUAI_DDEF const lu_byte luai_ctype_[UCHAR_MAX + 2] = {
    29    0x00,  /* EOZ */
    30    0x00,  0x00,  0x00,  0x00,  0x00,  0x00,  0x00,  0x00,	/* 0. */
    31    0x00,  0x08,  0x08,  0x08,  0x08,  0x08,  0x00,  0x00,
    32    0x00,  0x00,  0x00,  0x00,  0x00,  0x00,  0x00,  0x00,	/* 1. */
    33    0x00,  0x00,  0x00,  0x00,  0x00,  0x00,  0x00,  0x00,
    34    0x0c,  0x04,  0x04,  0x04,  0x04,  0x04,  0x04,  0x04,	/* 2. */
    35    0x04,  0x04,  0x04,  0x04,  0x04,  0x04,  0x04,  0x04,
    36    0x16,  0x16,  0x16,  0x16,  0x16,  0x16,  0x16,  0x16,	/* 3. */
    37    0x16,  0x16,  0x04,  0x04,  0x04,  0x04,  0x04,  0x04,
    38    0x04,  0x15,  0x15,  0x15,  0x15,  0x15,  0x15,  0x05,	/* 4. */
    39    0x05,  0x05,  0x05,  0x05,  0x05,  0x05,  0x05,  0x05,
    40    0x05,  0x05,  0x05,  0x05,  0x05,  0x05,  0x05,  0x05,	/* 5. */
    41    0x05,  0x05,  0x05,  0x04,  0x04,  0x04,  0x04,  0x05,
    42    0x04,  0x15,  0x15,  0x15,  0x15,  0x15,  0x15,  0x05,	/* 6. */
    43    0x05,  0x05,  0x05,  0x05,  0x05,  0x05,  0x05,  0x05,
    44    0x05,  0x05,  0x05,  0x05,  0x05,  0x05,  0x05,  0x05,	/* 7. */
    45    0x05,  0x05,  0x05,  0x04,  0x04,  0x04,  0x04,  0x00,
    46    NONA,  NONA,  NONA,  NONA,  NONA,  NONA,  NONA,  NONA,	/* 8. */
    47    NONA,  NONA,  NONA,  NONA,  NONA,  NONA,  NONA,  NONA,
    48    NONA,  NONA,  NONA,  NONA,  NONA,  NONA,  NONA,  NONA,	/* 9. */
    49    NONA,  NONA,  NONA,  NONA,  NONA,  NONA,  NONA,  NONA,
    50    NONA,  NONA,  NONA,  NONA,  NONA,  NONA,  NONA,  NONA,	/* a. */
    51    NONA,  NONA,  NONA,  NONA,  NONA,  NONA,  NONA,  NONA,
    52    NONA,  NONA,  NONA,  NONA,  NONA,  NONA,  NONA,  NONA,	/* b. */
    53    NONA,  NONA,  NONA,  NONA,  NONA,  NONA,  NONA,  NONA,
    54    0x00,  0x00,  NONA,  NONA,  NONA,  NONA,  NONA,  NONA,	/* c. */
    55    NONA,  NONA,  NONA,  NONA,  NONA,  NONA,  NONA,  NONA,
    56    NONA,  NONA,  NONA,  NONA,  NONA,  NONA,  NONA,  NONA,	/* d. */
    57    NONA,  NONA,  NONA,  NONA,  NONA,  NONA,  NONA,  NONA,
    58    NONA,  NONA,  NONA,  NONA,  NONA,  NONA,  NONA,  NONA,	/* e. */
    59    NONA,  NONA,  NONA,  NONA,  NONA,  NONA,  NONA,  NONA,
    60    NONA,  NONA,  NONA,  NONA,  NONA,  0x00,  0x00,  0x00,	/* f. */
    61    0x00,  0x00,  0x00,  0x00,  0x00,  0x00,  0x00,  0x00
    62  };
    63  
    64  #endif			/* } */