codex
Loading...
Searching...
No Matches
lobject.h
Go to the documentation of this file.
1
/*
2
** Tagged Values. This is the basic
3
** representation of values in Lua:
4
** an actual value plus a tag with
5
** its type.
6
*/
7
8
#define TValuefields \
9
Value value_; \
10
lu_byte tt_
11
12
typedef
struct
TValue
{
13
TValuefields
;
14
}
TValue
;
15
16
/*
17
** Entries in a Lua stack.
18
*/
19
typedef
union
StackValue
{
20
TValue
val
;
21
struct
{
22
TValuefields
;
23
unsigned
short
delta
;
24
}
tbclist
;
25
}
StackValue
;
26
27
/*
28
** Nodes for Hash tables: A pack
29
** of two TValue's (key-value pairs)
30
** plus a 'next' field to link
31
** colliding entries.
32
*/
33
typedef
union
Node
{
34
struct
NodeKey
{
35
TValuefields
;
36
lu_byte
key_tt
;
37
int
next
;
38
Value
key_val
;
39
}
u
;
40
TValue
i_val
;
41
}
Node
;
TValue
struct TValue TValue
StackValue
union StackValue StackValue
Node
union Node Node
Node::NodeKey
Definition
lobject.h:34
Node::NodeKey::key_val
Value key_val
Definition
lobject.h:38
Node::NodeKey::next
int next
Definition
lobject.h:37
Node::NodeKey::TValuefields
TValuefields
Definition
lobject.h:35
Node::NodeKey::key_tt
lu_byte key_tt
Definition
lobject.h:36
TValue
Definition
lobject.h:12
TValue::TValuefields
TValuefields
Definition
lobject.h:13
Node
Definition
lobject.h:33
Node::i_val
TValue i_val
Definition
lobject.h:40
Node::u
struct Node::NodeKey u
StackValue
Definition
lobject.h:19
StackValue::tbclist
struct StackValue::@1 tbclist
StackValue::TValuefields
TValuefields
Definition
lobject.h:22
StackValue::delta
unsigned short delta
Definition
lobject.h:23
StackValue::val
TValue val
Definition
lobject.h:20
tex
cpp
lobject.h
Generated by
1.11.0