aboutsummaryrefslogtreecommitdiff
path: root/src/lua/lctype.c
diff options
context:
space:
mode:
authorLi Jin <dragon-fly@qq.com>2020-06-22 16:50:40 +0800
committerLi Jin <dragon-fly@qq.com>2020-06-22 16:50:40 +0800
commitcd2b60b101a398cb9356d746364e70eaed1860f1 (patch)
treea1fe71b76faabc4883f16905a94164ce5c23e692 /src/lua/lctype.c
parent88c1052e700f38cf3d8ad82d469da4c487760b7e (diff)
downloadyuescript-cd2b60b101a398cb9356d746364e70eaed1860f1.tar.gz
yuescript-cd2b60b101a398cb9356d746364e70eaed1860f1.tar.bz2
yuescript-cd2b60b101a398cb9356d746364e70eaed1860f1.zip
add support for local variable declared with attribute 'close' and 'const' for Lua 5.4.
Diffstat (limited to 'src/lua/lctype.c')
-rw-r--r--src/lua/lctype.c64
1 files changed, 64 insertions, 0 deletions
diff --git a/src/lua/lctype.c b/src/lua/lctype.c
new file mode 100644
index 0000000..9542280
--- /dev/null
+++ b/src/lua/lctype.c
@@ -0,0 +1,64 @@
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
28LUAI_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 /* } */