aboutsummaryrefslogtreecommitdiff
path: root/lobject.h
diff options
context:
space:
mode:
Diffstat (limited to 'lobject.h')
-rw-r--r--lobject.h12
1 files changed, 9 insertions, 3 deletions
diff --git a/lobject.h b/lobject.h
index a5827f84..93356dd2 100644
--- a/lobject.h
+++ b/lobject.h
@@ -1,5 +1,5 @@
1/* 1/*
2** $Id: lobject.h,v 2.98 2014/07/18 13:36:14 roberto Exp roberto $ 2** $Id: lobject.h,v 2.99 2014/07/18 14:46:47 roberto Exp roberto $
3** Type definitions for Lua objects 3** Type definitions for Lua objects
4** See Copyright Notice in lua.h 4** See Copyright Notice in lua.h
5*/ 5*/
@@ -241,8 +241,7 @@ typedef struct lua_TValue TValue;
241 241
242 242
243#define setobj(L,obj1,obj2) \ 243#define setobj(L,obj1,obj2) \
244 { const TValue *io2=(obj2); TValue *io1=(obj1); \ 244 { TValue *io1=(obj1); *io1 = *(obj2); \
245 io1->value_ = io2->value_; io1->tt_ = io2->tt_; \
246 (void)L; checkliveness(G(L),io1); } 245 (void)L; checkliveness(G(L),io1); }
247 246
248 247
@@ -471,6 +470,13 @@ typedef union TKey {
471} TKey; 470} TKey;
472 471
473 472
473/* copy a value into a key without messing up field 'next' */
474#define setkey(L,key,obj) \
475 { TKey *k_=(key); const TValue *io_=(obj); \
476 k_->nk.value_ = io_->value_; k_->nk.tt_ = io_->tt_; \
477 (void)L; checkliveness(G(L),io_); }
478
479
474typedef struct Node { 480typedef struct Node {
475 TValue i_val; 481 TValue i_val;
476 TKey i_key; 482 TKey i_key;