~ubuntu-branches/ubuntu/vivid/emscripten/vivid

« back to all changes in this revision

Viewing changes to tests/lua/src/lstring.h

  • Committer: Package Import Robot
  • Author(s): Sylvestre Ledru
  • Date: 2013-05-02 13:11:51 UTC
  • Revision ID: package-import@ubuntu.com-20130502131151-q8dvteqr1ef2x7xz
Tags: upstream-1.4.1~20130504~adb56cb
ImportĀ upstreamĀ versionĀ 1.4.1~20130504~adb56cb

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
** $Id: lstring.h,v 1.49 2012/02/01 21:57:15 roberto Exp $
 
3
** String table (keep all strings handled by Lua)
 
4
** See Copyright Notice in lua.h
 
5
*/
 
6
 
 
7
#ifndef lstring_h
 
8
#define lstring_h
 
9
 
 
10
#include "lgc.h"
 
11
#include "lobject.h"
 
12
#include "lstate.h"
 
13
 
 
14
 
 
15
#define sizestring(s)   (sizeof(union TString)+((s)->len+1)*sizeof(char))
 
16
 
 
17
#define sizeudata(u)    (sizeof(union Udata)+(u)->len)
 
18
 
 
19
#define luaS_newliteral(L, s)   (luaS_newlstr(L, "" s, \
 
20
                                 (sizeof(s)/sizeof(char))-1))
 
21
 
 
22
#define luaS_fix(s)     l_setbit((s)->tsv.marked, FIXEDBIT)
 
23
 
 
24
 
 
25
/*
 
26
** test whether a string is a reserved word
 
27
*/
 
28
#define isreserved(s)   ((s)->tsv.tt == LUA_TSHRSTR && (s)->tsv.extra > 0)
 
29
 
 
30
 
 
31
/*
 
32
** equality for short strings, which are always internalized
 
33
*/
 
34
#define eqshrstr(a,b)   check_exp((a)->tsv.tt == LUA_TSHRSTR, (a) == (b))
 
35
 
 
36
 
 
37
LUAI_FUNC unsigned int luaS_hash (const char *str, size_t l, unsigned int seed);
 
38
LUAI_FUNC int luaS_eqlngstr (TString *a, TString *b);
 
39
LUAI_FUNC int luaS_eqstr (TString *a, TString *b);
 
40
LUAI_FUNC void luaS_resize (lua_State *L, int newsize);
 
41
LUAI_FUNC Udata *luaS_newudata (lua_State *L, size_t s, Table *e);
 
42
LUAI_FUNC TString *luaS_newlstr (lua_State *L, const char *str, size_t l);
 
43
LUAI_FUNC TString *luaS_new (lua_State *L, const char *str);
 
44
 
 
45
 
 
46
#endif