FazBrowse GitHub Viewer
|
Trending
|
URL:
|
Home
Tools:
[Download Repo ZIP]
[View Raw Code]
[Original HTTPS Page]
lua/lua.h at master · lua/lua · GitHub
Uh oh!
There was an error while loading.
Please reload this page
.
lua
/
lua
Public
Notifications
You must be signed in to change notification settings
Fork
2k
Star
10.3k
Code
Actions
Security and quality
0
Insights
Additional navigation options
Code
Actions
Security and quality
Insights
Expand file tree
Breadcrumbs
lua
/
lua.h
Copy path
More file actions
More file actions
Latest commit
History
History
History
547 lines (401 loc) · 16.3 KB
Breadcrumbs
lua
/
lua.h
Copy path
File metadata and controls
547 lines (401 loc) · 16.3 KB
Raw
Copy raw file
Download raw file
Open symbols panel
Edit and raw actions
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
/*
** $Id: lua.h $
** Lua - A Scripting Language
** Lua.org, PUC-Rio, Brazil (www.lua.org)
** See Copyright Notice at the end of this file
*/
#ifndef
lua_h
#define
lua_h
#include
<stdarg.h>
#include
<stddef.h>
#define
LUA_COPYRIGHT
LUA_RELEASE " Copyright (C) 1994-2026 Lua.org, PUC-Rio"
#define
LUA_AUTHORS
"R. Ierusalimschy, L. H. de Figueiredo, W. Celes"
#define
LUA_VERSION_MAJOR_N
5
#define
LUA_VERSION_MINOR_N
5
#define
LUA_VERSION_RELEASE_N
1
#define
LUA_VERSION_NUM
(LUA_VERSION_MAJOR_N * 100 + LUA_VERSION_MINOR_N)
#define
LUA_VERSION_RELEASE_NUM
(LUA_VERSION_NUM * 100 + LUA_VERSION_RELEASE_N)
#include
"luaconf.h"
/* mark for precompiled code ('<esc>Lua') */
#define
LUA_SIGNATURE
"\x1bLua"
/* option for multiple returns in 'lua_pcall' and 'lua_call' */
#define
LUA_MULTRET
(-1)
/*
** Pseudo-indices
** (The stack size is limited to INT_MAX/2; we keep some free empty
** space after that to help overflow detection.)
*/
#define
LUA_REGISTRYINDEX
(-(INT_MAX/2 + 1000))
#define
lua_upvalueindex
(
i
) (LUA_REGISTRYINDEX - (i))
/* thread status */
#define
LUA_OK
0
#define
LUA_YIELD
1
#define
LUA_ERRRUN
2
#define
LUA_ERRSYNTAX
3
#define
LUA_ERRMEM
4
#define
LUA_ERRERR
5
typedef
struct
lua_State
lua_State
;
/*
** basic types
*/
#define
LUA_TNONE
(-1)
#define
LUA_TNIL
0
#define
LUA_TBOOLEAN
1
#define
LUA_TLIGHTUSERDATA
2
#define
LUA_TNUMBER
3
#define
LUA_TSTRING
4
#define
LUA_TTABLE
5
#define
LUA_TFUNCTION
6
#define
LUA_TUSERDATA
7
#define
LUA_TTHREAD
8
#define
LUA_NUMTYPES
9
/* minimum Lua stack available to a C function */
#define
LUA_MINSTACK
20
/* predefined values in the registry */
/* index 1 is reserved for the reference mechanism */
#define
LUA_RIDX_GLOBALS
2
#define
LUA_RIDX_MAINTHREAD
3
#define
LUA_RIDX_LAST
3
/* type of numbers in Lua */
typedef
LUA_NUMBER
lua_Number
;
/* type for integer functions */
typedef
LUA_INTEGER
lua_Integer
;
/* unsigned integer type */
typedef
LUA_UNSIGNED
lua_Unsigned
;
/* type for continuation-function contexts */
typedef
LUA_KCONTEXT
lua_KContext
;
/*
** Type for C functions registered with Lua
*/
typedef
int
(
*
lua_CFunction
) (
lua_State
*
L
);
/*
** Type for continuation functions
*/
typedef
int
(
*
lua_KFunction
) (
lua_State
*
L
,
int
status
,
lua_KContext
ctx
);
/*
** Type for functions that read/write blocks when loading/dumping Lua chunks
*/
typedef
const
char
*
(
*
lua_Reader
) (
lua_State
*
L
,
void
*
ud
,
size_t
*
sz
);
typedef
int
(
*
lua_Writer
) (
lua_State
*
L
,
const
void
*
p
,
size_t
sz
,
void
*
ud
);
/*
** Type for memory-allocation functions
*/
typedef
void
*
(
*
lua_Alloc
) (
void
*
ud
,
void
*
ptr
,
size_t
osize
,
size_t
nsize
);
/*
** Type for warning functions
*/
typedef
void
(
*
lua_WarnFunction
) (
void
*
ud
,
const
char
*
msg
,
int
tocont
);
/*
** Type used by the debug API to collect debug information
*/
typedef
struct
lua_Debug
lua_Debug
;
/*
** Functions to be called by the debugger in specific events
*/
typedef
void
(
*
lua_Hook
) (
lua_State
*
L
,
lua_Debug
*
ar
);
/*
** generic extra include file
*/
#if
defined(
LUA_USER_H
)
#include
LUA_USER_H
#endif
/*
** RCS ident string
*/
extern
const
char
lua_ident
[];
/*
** state manipulation
*/
LUA_API
lua_State
*
(
lua_newstate
) (
lua_Alloc
f
,
void
*
ud
,
unsigned
seed
);
LUA_API
void
(
lua_close
) (
lua_State
*
L
);
LUA_API
lua_State
*
(
lua_newthread
) (
lua_State
*
L
);
LUA_API
int
(
lua_closethread
) (
lua_State
*
L
,
lua_State
*
from
);
LUA_API
lua_CFunction
(
lua_atpanic
) (
lua_State
*
L
,
lua_CFunction
panicf
);
LUA_API
lua_Number
(
lua_version
) (
lua_State
*
L
);
/*
** basic stack manipulation
*/
LUA_API
int
(
lua_absindex
) (
lua_State
*
L
,
int
idx
);
LUA_API
int
(
lua_gettop
) (
lua_State
*
L
);
LUA_API
void
(
lua_settop
) (
lua_State
*
L
,
int
idx
);
LUA_API
void
(
lua_pushvalue
) (
lua_State
*
L
,
int
idx
);
LUA_API
void
(
lua_rotate
) (
lua_State
*
L
,
int
idx
,
int
n
);
LUA_API
void
(
lua_copy
) (
lua_State
*
L
,
int
fromidx
,
int
toidx
);
LUA_API
int
(
lua_checkstack
) (
lua_State
*
L
,
int
n
);
LUA_API
void
(
lua_xmove
) (
lua_State
*
from
,
lua_State
*
to
,
int
n
);
/*
** access functions (stack -> C)
*/
LUA_API
int
(
lua_isnumber
) (
lua_State
*
L
,
int
idx
);
LUA_API
int
(
lua_isstring
) (
lua_State
*
L
,
int
idx
);
LUA_API
int
(
lua_iscfunction
) (
lua_State
*
L
,
int
idx
);
LUA_API
int
(
lua_isinteger
) (
lua_State
*
L
,
int
idx
);
LUA_API
int
(
lua_isuserdata
) (
lua_State
*
L
,
int
idx
);
LUA_API
int
(
lua_type
) (
lua_State
*
L
,
int
idx
);
LUA_API
const
char
*
(
lua_typename
) (
lua_State
*
L
,
int
tp
);
LUA_API
lua_Number
(
lua_tonumberx
) (
lua_State
*
L
,
int
idx
,
int
*
isnum
);
LUA_API
lua_Integer
(
lua_tointegerx
) (
lua_State
*
L
,
int
idx
,
int
*
isnum
);
LUA_API
int
(
lua_toboolean
) (
lua_State
*
L
,
int
idx
);
LUA_API
const
char
*
(
lua_tolstring
) (
lua_State
*
L
,
int
idx
,
size_t
*
len
);
LUA_API
lua_Unsigned
(
lua_rawlen
) (
lua_State
*
L
,
int
idx
);
LUA_API
lua_CFunction
(
lua_tocfunction
) (
lua_State
*
L
,
int
idx
);
LUA_API
void
*
(
lua_touserdata
) (
lua_State
*
L
,
int
idx
);
LUA_API
lua_State
*
(
lua_tothread
) (
lua_State
*
L
,
int
idx
);
LUA_API
const
void
*
(
lua_topointer
) (
lua_State
*
L
,
int
idx
);
/*
** Comparison and arithmetic functions
*/
#define
LUA_OPADD
0
/* ORDER TM, ORDER OP */
#define
LUA_OPSUB
1
#define
LUA_OPMUL
2
#define
LUA_OPMOD
3
#define
LUA_OPPOW
4
#define
LUA_OPDIV
5
#define
LUA_OPIDIV
6
#define
LUA_OPBAND
7
#define
LUA_OPBOR
8
#define
LUA_OPBXOR
9
#define
LUA_OPSHL
10
#define
LUA_OPSHR
11
#define
LUA_OPUNM
12
#define
LUA_OPBNOT
13
LUA_API
void
(
lua_arith
) (
lua_State
*
L
,
int
op
);
#define
LUA_OPEQ
0
#define
LUA_OPLT
1
#define
LUA_OPLE
2
LUA_API
int
(
lua_rawequal
) (
lua_State
*
L
,
int
idx1
,
int
idx2
);
LUA_API
int
(
lua_compare
) (
lua_State
*
L
,
int
idx1
,
int
idx2
,
int
op
);
/*
** push functions (C -> stack)
*/
LUA_API
void
(
lua_pushnil
) (
lua_State
*
L
);
LUA_API
void
(
lua_pushnumber
) (
lua_State
*
L
,
lua_Number
n
);
LUA_API
void
(
lua_pushinteger
) (
lua_State
*
L
,
lua_Integer
n
);
LUA_API
const
char
*
(
lua_pushlstring
) (
lua_State
*
L
,
const
char
*
s
,
size_t
len
);
LUA_API
const
char
*
(
lua_pushexternalstring
) (
lua_State
*
L
,
const
char
*
s
,
size_t
len
,
lua_Alloc
falloc
,
void
*
ud
);
LUA_API
const
char
*
(
lua_pushstring
) (
lua_State
*
L
,
const
char
*
s
);
LUA_API
const
char
*
(
lua_pushvfstring
) (
lua_State
*
L
,
const
char
*
fmt
,
va_list
argp
);
LUA_API
const
char
*
(
lua_pushfstring
) (
lua_State
*
L
,
const
char
*
fmt
, ...);
LUA_API
void
(
lua_pushcclosure
) (
lua_State
*
L
,
lua_CFunction
fn
,
int
n
);
LUA_API
void
(
lua_pushboolean
) (
lua_State
*
L
,
int
b
);
LUA_API
void
(
lua_pushlightuserdata
) (
lua_State
*
L
,
void
*
p
);
LUA_API
int
(
lua_pushthread
) (
lua_State
*
L
);
/*
** get functions (Lua -> stack)
*/
LUA_API
int
(
lua_getglobal
) (
lua_State
*
L
,
const
char
*
name
);
LUA_API
int
(
lua_gettable
) (
lua_State
*
L
,
int
idx
);
LUA_API
int
(
lua_getfield
) (
lua_State
*
L
,
int
idx
,
const
char
*
k
);
LUA_API
int
(
lua_geti
) (
lua_State
*
L
,
int
idx
,
lua_Integer
n
);
LUA_API
int
(
lua_rawget
) (
lua_State
*
L
,
int
idx
);
LUA_API
int
(
lua_rawgeti
) (
lua_State
*
L
,
int
idx
,
lua_Integer
n
);
LUA_API
int
(
lua_rawgetp
) (
lua_State
*
L
,
int
idx
,
const
void
*
p
);
LUA_API
void
(
lua_createtable
) (
lua_State
*
L
,
int
narr
,
int
nrec
);
LUA_API
void
*
(
lua_newuserdatauv
) (
lua_State
*
L
,
size_t
sz
,
int
nuvalue
);
LUA_API
int
(
lua_getmetatable
) (
lua_State
*
L
,
int
objindex
);
LUA_API
int
(
lua_getiuservalue
) (
lua_State
*
L
,
int
idx
,
int
n
);
/*
** set functions (stack -> Lua)
*/
LUA_API
void
(
lua_setglobal
) (
lua_State
*
L
,
const
char
*
name
);
LUA_API
void
(
lua_settable
) (
lua_State
*
L
,
int
idx
);
LUA_API
void
(
lua_setfield
) (
lua_State
*
L
,
int
idx
,
const
char
*
k
);
LUA_API
void
(
lua_seti
) (
lua_State
*
L
,
int
idx
,
lua_Integer
n
);
LUA_API
void
(
lua_rawset
) (
lua_State
*
L
,
int
idx
);
LUA_API
void
(
lua_rawseti
) (
lua_State
*
L
,
int
idx
,
lua_Integer
n
);
LUA_API
void
(
lua_rawsetp
) (
lua_State
*
L
,
int
idx
,
const
void
*
p
);
LUA_API
int
(
lua_setmetatable
) (
lua_State
*
L
,
int
objindex
);
LUA_API
int
(
lua_setiuservalue
) (
lua_State
*
L
,
int
idx
,
int
n
);
/*
** 'load' and 'call' functions (load and run Lua code)
*/
LUA_API
void
(
lua_callk
) (
lua_State
*
L
,
int
nargs
,
int
nresults
,
lua_KContext
ctx
,
lua_KFunction
k
);
#define
lua_call
(
L
,
n
,
r
) lua_callk(L, (n), (r), 0, NULL)
LUA_API
int
(
lua_pcallk
) (
lua_State
*
L
,
int
nargs
,
int
nresults
,
int
errfunc
,
lua_KContext
ctx
,
lua_KFunction
k
);
#define
lua_pcall
(
L
,
n
,
r
,
f
) lua_pcallk(L, (n), (r), (f), 0, NULL)
LUA_API
int
(
lua_load
) (
lua_State
*
L
,
lua_Reader
reader
,
void
*
dt
,
const
char
*
chunkname
,
const
char
*
mode
);
LUA_API
int
(
lua_dump
) (
lua_State
*
L
,
lua_Writer
writer
,
void
*
data
,
int
strip
);
/*
** coroutine functions
*/
LUA_API
int
(
lua_yieldk
) (
lua_State
*
L
,
int
nresults
,
lua_KContext
ctx
,
lua_KFunction
k
);
LUA_API
int
(
lua_resume
) (
lua_State
*
L
,
lua_State
*
from
,
int
narg
,
int
*
nres
);
LUA_API
int
(
lua_status
) (
lua_State
*
L
);
LUA_API
int
(
lua_isyieldable
) (
lua_State
*
L
);
#define
lua_yield
(
L
,
n
) lua_yieldk(L, (n), 0, NULL)
/*
** Warning-related functions
*/
LUA_API
void
(
lua_setwarnf
) (
lua_State
*
L
,
lua_WarnFunction
f
,
void
*
ud
);
LUA_API
void
(
lua_warning
) (
lua_State
*
L
,
const
char
*
msg
,
int
tocont
);
/*
** garbage-collection options
*/
#define
LUA_GCSTOP
0
#define
LUA_GCRESTART
1
#define
LUA_GCCOLLECT
2
#define
LUA_GCCOUNT
3
#define
LUA_GCCOUNTB
4
#define
LUA_GCSTEP
5
#define
LUA_GCISRUNNING
6
#define
LUA_GCGEN
7
#define
LUA_GCINC
8
#define
LUA_GCPARAM
9
/*
** garbage-collection parameters
*/
/* parameters for generational mode */
#define
LUA_GCPMINORMUL
0
/* control minor collections */
#define
LUA_GCPMAJORMINOR
1
/* control shift major->minor */
#define
LUA_GCPMINORMAJOR
2
/* control shift minor->major */
/* parameters for incremental mode */
#define
LUA_GCPPAUSE
3
/* size of pause between successive GCs */
#define
LUA_GCPSTEPMUL
4
/* GC "speed" */
#define
LUA_GCPSTEPSIZE
5
/* GC granularity */
/* number of parameters */
#define
LUA_GCPN
6
LUA_API
int
(
lua_gc
) (
lua_State
*
L
,
int
what
, ...);
/*
** miscellaneous functions
*/
LUA_API
int
(
lua_error
) (
lua_State
*
L
);
LUA_API
int
(
lua_next
) (
lua_State
*
L
,
int
idx
);
LUA_API
void
(
lua_concat
) (
lua_State
*
L
,
int
n
);
LUA_API
void
(
lua_len
) (
lua_State
*
L
,
int
idx
);
#define
LUA_N2SBUFFSZ
64
LUA_API
unsigned
(
lua_numbertocstring
) (
lua_State
*
L
,
int
idx
,
char
*
buff
);
LUA_API
size_t
(
lua_stringtonumber
) (
lua_State
*
L
,
const
char
*
s
);
LUA_API
lua_Alloc
(
lua_getallocf
) (
lua_State
*
L
,
void
*
*
ud
);
LUA_API
void
(
lua_setallocf
) (
lua_State
*
L
,
lua_Alloc
f
,
void
*
ud
);
LUA_API
void
(
lua_toclose
) (
lua_State
*
L
,
int
idx
);
LUA_API
void
(
lua_closeslot
) (
lua_State
*
L
,
int
idx
);
/*
** {==============================================================
** some useful macros
** ===============================================================
*/
#define
lua_getextraspace
(
L
) ((void *)((char *)(L) - LUA_EXTRASPACE))
#define
lua_tonumber
(
L
,
i
) lua_tonumberx(L,(i),NULL)
#define
lua_tointeger
(
L
,
i
) lua_tointegerx(L,(i),NULL)
#define
lua_pop
(
L
,
n
) lua_settop(L, -(n)-1)
#define
lua_newtable
(
L
) lua_createtable(L, 0, 0)
#define
lua_register
(
L
,
n
,
f
) (lua_pushcfunction(L, (f)), lua_setglobal(L, (n)))
#define
lua_pushcfunction
(
L
,
f
) lua_pushcclosure(L, (f), 0)
#define
lua_isfunction
(
L
,
n
) (lua_type(L, (n)) == LUA_TFUNCTION)
#define
lua_istable
(
L
,
n
) (lua_type(L, (n)) == LUA_TTABLE)
#define
lua_islightuserdata
(
L
,
n
) (lua_type(L, (n)) == LUA_TLIGHTUSERDATA)
#define
lua_isnil
(
L
,
n
) (lua_type(L, (n)) == LUA_TNIL)
#define
lua_isboolean
(
L
,
n
) (lua_type(L, (n)) == LUA_TBOOLEAN)
#define
lua_isthread
(
L
,
n
) (lua_type(L, (n)) == LUA_TTHREAD)
#define
lua_isnone
(
L
,
n
) (lua_type(L, (n)) == LUA_TNONE)
#define
lua_isnoneornil
(
L
,
n
) (lua_type(L, (n)) <= 0)
#define
lua_pushliteral
(
L
,
s
) lua_pushstring(L, "" s)
#define
lua_pushglobaltable
(
L
) \
((void)lua_rawgeti(L, LUA_REGISTRYINDEX, LUA_RIDX_GLOBALS))
#define
lua_tostring
(
L
,
i
) lua_tolstring(L, (i), NULL)
#define
lua_insert
(
L
,
idx
) lua_rotate(L, (idx), 1)
#define
lua_remove
(
L
,
idx
) (lua_rotate(L, (idx), -1), lua_pop(L, 1))
#define
lua_replace
(
L
,
idx
) (lua_copy(L, -1, (idx)), lua_pop(L, 1))
/* }============================================================== */
/*
** {==============================================================
** compatibility macros
** ===============================================================
*/
#define
lua_newuserdata
(
L
,
s
) lua_newuserdatauv(L,s,1)
#define
lua_getuservalue
(
L
,
idx
) lua_getiuservalue(L,idx,1)
#define
lua_setuservalue
(
L
,
idx
) lua_setiuservalue(L,idx,1)
#define
lua_resetthread
(
L
) lua_closethread(L,NULL)
/* }============================================================== */
/*
** {======================================================================
** Debug API
** =======================================================================
*/
/*
** Event codes
*/
#define
LUA_HOOKCALL
0
#define
LUA_HOOKRET
1
#define
LUA_HOOKLINE
2
#define
LUA_HOOKCOUNT
3
#define
LUA_HOOKTAILCALL
4
/*
** Event masks
*/
#define
LUA_MASKCALL
(1 << LUA_HOOKCALL)
#define
LUA_MASKRET
(1 << LUA_HOOKRET)
#define
LUA_MASKLINE
(1 << LUA_HOOKLINE)
#define
LUA_MASKCOUNT
(1 << LUA_HOOKCOUNT)
LUA_API
int
(
lua_getstack
) (
lua_State
*
L
,
int
level
,
lua_Debug
*
ar
);
LUA_API
int
(
lua_getinfo
) (
lua_State
*
L
,
const
char
*
what
,
lua_Debug
*
ar
);
LUA_API
const
char
*
(
lua_getlocal
) (
lua_State
*
L
,
const
lua_Debug
*
ar
,
int
n
);
LUA_API
const
char
*
(
lua_setlocal
) (
lua_State
*
L
,
const
lua_Debug
*
ar
,
int
n
);
LUA_API
const
char
*
(
lua_getupvalue
) (
lua_State
*
L
,
int
funcindex
,
int
n
);
LUA_API
const
char
*
(
lua_setupvalue
) (
lua_State
*
L
,
int
funcindex
,
int
n
);
LUA_API
void
*
(
lua_upvalueid
) (
lua_State
*
L
,
int
fidx
,
int
n
);
LUA_API
void
(
lua_upvaluejoin
) (
lua_State
*
L
,
int
fidx1
,
int
n1
,
int
fidx2
,
int
n2
);
LUA_API
void
(
lua_sethook
) (
lua_State
*
L
,
lua_Hook
func
,
int
mask
,
int
count
);
LUA_API
lua_Hook
(
lua_gethook
) (
lua_State
*
L
);
LUA_API
int
(
lua_gethookmask
) (
lua_State
*
L
);
LUA_API
int
(
lua_gethookcount
) (
lua_State
*
L
);
struct
lua_Debug
{
int
event
;
const
char
*
name
;
/* (n) */
const
char
*
namewhat
;
/* (n) 'global', 'local', 'field', 'method' */
const
char
*
what
;
/* (S) 'Lua', 'C', 'main', 'tail' */
const
char
*
source
;
/* (S) */
size_t
srclen
;
/* (S) */
int
currentline
;
/* (l) */
int
linedefined
;
/* (S) */
int
lastlinedefined
;
/* (S) */
unsigned
char
nups
;
/* (u) number of upvalues */
unsigned
char
nparams
;
/* (u) number of parameters */
char
isvararg
;
/* (u) */
unsigned
char
extraargs
;
/* (t) number of extra arguments */
char
istailcall
;
/* (t) */
int
ftransfer
;
/* (r) index of first value transferred */
int
ntransfer
;
/* (r) number of transferred values */
char
short_src
[
LUA_IDSIZE
];
/* (S) */
/* private part */
struct
CallInfo
*
i_ci
;
/* active function */
};
/* }====================================================================== */
#define
LUAI_TOSTRAUX
(
x
) #x
#define
LUAI_TOSTR
(
x
) LUAI_TOSTRAUX(x)
#define
LUA_VERSION_MAJOR
LUAI_TOSTR(LUA_VERSION_MAJOR_N)
#define
LUA_VERSION_MINOR
LUAI_TOSTR(LUA_VERSION_MINOR_N)
#define
LUA_VERSION_RELEASE
LUAI_TOSTR(LUA_VERSION_RELEASE_N)
#define
LUA_VERSION
"Lua " LUA_VERSION_MAJOR "." LUA_VERSION_MINOR
#define
LUA_RELEASE
LUA_VERSION "." LUA_VERSION_RELEASE
/******************************************************************************
* Copyright (C) 1994-2026 Lua.org, PUC-Rio.
*
* Permission is hereby granted, free of charge, to any person obtaining
* a copy of this software and associated documentation files (the
* "Software"), to deal in the Software without restriction, including
* without limitation the rights to use, copy, modify, merge, publish,
* distribute, sublicense, and/or sell copies of the Software, and to
* permit persons to whom the Software is furnished to do so, subject to
* the following conditions:
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
******************************************************************************/
#endif
Back
|
FazBrowse Home
|
New Git URL