lua

A copy of the Lua development repository
Log | Files | Refs | README

lctype.c (2461B)


      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			/* } */