The Battle for Wesnoth  1.15.0+dev
Macros | Functions | Variables
lobject.cpp File Reference
#include "lprefix.h"
#include <locale.h>
#include <math.h>
#include <stdarg.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "lua.h"
#include "lctype.h"
#include "ldebug.h"
#include "ldo.h"
#include "lmem.h"
#include "lobject.h"
#include "lstate.h"
#include "lstring.h"
#include "lvm.h"
Include dependency graph for lobject.cpp:

Go to the source code of this file.

Macros

#define lobject_c
 
#define LUA_CORE
 
#define L_MAXLENNUM   200
 
#define MAXBY10   cast(lua_Unsigned, LUA_MAXINTEGER / 10)
 
#define MAXLASTD   cast_int(LUA_MAXINTEGER % 10)
 
#define MAXNUMBER2STR   50
 
#define LL(x)   (sizeof(x)/sizeof(char) - 1)
 
#define RETS   "..."
 
#define PRE   "[string \""
 
#define POS   "\"]"
 
#define addstr(a, b, l)   ( memcpy(a,b,(l) * sizeof(char)), a += (l) )
 

Functions

int luaO_int2fb (unsigned int x)
 
int luaO_fb2int (int x)
 
int luaO_ceillog2 (unsigned int x)
 
static lua_Integer intarith (lua_State *L, int op, lua_Integer v1, lua_Integer v2)
 
static lua_Number numarith (lua_State *L, int op, lua_Number v1, lua_Number v2)
 
void luaO_arith (lua_State *L, int op, const TValue *p1, const TValue *p2, TValue *res)
 
int luaO_hexavalue (int c)
 
static int isneg (const char **s)
 
static const char * l_str2dloc (const char *s, lua_Number *result, int mode)
 
static const char * l_str2d (const char *s, lua_Number *result)
 
static const char * l_str2int (const char *s, lua_Integer *result)
 
size_t luaO_str2num (const char *s, TValue *o)
 
int luaO_utf8esc (char *buff, unsigned long x)
 
void luaO_tostring (lua_State *L, StkId obj)
 
static void pushstr (lua_State *L, const char *str, size_t l)
 
const char * luaO_pushvfstring (lua_State *L, const char *fmt, va_list argp)
 
const char * luaO_pushfstring (lua_State *L, const char *fmt,...)
 
void luaO_chunkid (char *out, const char *source, size_t bufflen)
 

Variables

LUAI_DDEF const TValue luaO_nilobject_ = {NILCONSTANT}
 

Macro Definition Documentation

◆ addstr

#define addstr (   a,
  b,
 
)    ( memcpy(a,b,(l) * sizeof(char)), a += (l) )

Definition at line 485 of file lobject.cpp.

Referenced by luaO_chunkid().

◆ L_MAXLENNUM

#define L_MAXLENNUM   200

Definition at line 248 of file lobject.cpp.

Referenced by l_str2d().

◆ LL

#define LL (   x)    (sizeof(x)/sizeof(char) - 1)

Definition at line 479 of file lobject.cpp.

Referenced by luaO_chunkid().

◆ lobject_c

#define lobject_c

Definition at line 7 of file lobject.cpp.

◆ LUA_CORE

#define LUA_CORE

Definition at line 8 of file lobject.cpp.

◆ MAXBY10

#define MAXBY10   cast(lua_Unsigned, LUA_MAXINTEGER / 10)

Definition at line 296 of file lobject.cpp.

Referenced by l_str2int().

◆ MAXLASTD

#define MAXLASTD   cast_int(LUA_MAXINTEGER % 10)

Definition at line 297 of file lobject.cpp.

Referenced by l_str2int().

◆ MAXNUMBER2STR

#define MAXNUMBER2STR   50

Definition at line 365 of file lobject.cpp.

Referenced by luaO_tostring().

◆ POS

#define POS   "\"]"

Definition at line 483 of file lobject.cpp.

Referenced by luaO_chunkid().

◆ PRE

#define PRE   "[string \""

Definition at line 482 of file lobject.cpp.

Referenced by luaO_chunkid().

◆ RETS

#define RETS   "..."

Definition at line 481 of file lobject.cpp.

Referenced by luaO_chunkid().

Function Documentation

◆ intarith()

static lua_Integer intarith ( lua_State L,
int  op,
lua_Integer  v1,
lua_Integer  v2 
)
static

◆ isneg()

static int isneg ( const char **  s)
static

◆ l_str2d()

static const char* l_str2d ( const char *  s,
lua_Number result 
)
static

Definition at line 274 of file lobject.cpp.

References cast_uchar, L_MAXLENNUM, l_str2dloc(), ltolower, lua_getlocaledecpoint, and s.

Referenced by luaO_str2num().

◆ l_str2dloc()

static const char* l_str2dloc ( const char *  s,
lua_Number result,
int  mode 
)
static

Definition at line 251 of file lobject.cpp.

References cast_uchar, lisspace, lua_str2number, and lua_strx2number.

Referenced by l_str2d().

◆ l_str2int()

static const char* l_str2int ( const char *  s,
lua_Integer result 
)
static

Definition at line 299 of file lobject.cpp.

References a, cast_uchar, d, isneg(), l_castU2S, lisdigit, lisspace, lisxdigit, luaO_hexavalue(), MAXBY10, MAXLASTD, and s.

Referenced by luaO_str2num().

◆ luaO_arith()

void luaO_arith ( lua_State L,
int  op,
const TValue p1,
const TValue p2,
TValue res 
)

◆ luaO_ceillog2()

int luaO_ceillog2 ( unsigned int  x)

Definition at line 65 of file lobject.cpp.

Referenced by countint(), and setnodevector().

◆ luaO_chunkid()

void luaO_chunkid ( char *  out,
const char *  source,
size_t  bufflen 
)

Definition at line 487 of file lobject.cpp.

References addstr, LL, POS, PRE, and RETS.

Referenced by funcinfo(), and luaG_addinfo().

◆ luaO_fb2int()

int luaO_fb2int ( int  x)

Definition at line 57 of file lobject.cpp.

Referenced by luaV_execute().

◆ luaO_hexavalue()

int luaO_hexavalue ( int  c)

Definition at line 163 of file lobject.cpp.

References lisdigit, and ltolower.

Referenced by gethexa(), isneg(), l_str2int(), and readutf8esc().

◆ luaO_int2fb()

int luaO_int2fb ( unsigned int  x)

Definition at line 41 of file lobject.cpp.

References cast_int, and e.

Referenced by constructor().

◆ luaO_pushfstring()

const char* luaO_pushfstring ( lua_State L,
const char *  fmt,
  ... 
)

◆ luaO_pushvfstring()

const char* luaO_pushvfstring ( lua_State L,
const char *  fmt,
va_list  argp 
)

◆ luaO_str2num()

size_t luaO_str2num ( const char *  s,
TValue o 
)

Definition at line 331 of file lobject.cpp.

References e, i, l_str2d(), l_str2int(), n, setfltvalue, and setivalue.

Referenced by lua_stringtonumber(), luaV_tointeger(), luaV_tonumber_(), and read_numeral().

◆ luaO_tostring()

void luaO_tostring ( lua_State L,
StkId  obj 
)

◆ luaO_utf8esc()

int luaO_utf8esc ( char *  buff,
unsigned long  x 
)

Definition at line 346 of file lobject.cpp.

References cast, lua_assert, n, and UTF8BUFFSZ.

Referenced by luaO_pushvfstring(), and utf8esc().

◆ numarith()

static lua_Number numarith ( lua_State L,
int  op,
lua_Number  v1,
lua_Number  v2 
)
static

◆ pushstr()

static void pushstr ( lua_State L,
const char *  str,
size_t  l 
)
static

Definition at line 390 of file lobject.cpp.

References luaD_inctop(), luaS_newlstr(), setsvalue2s, and lua_State::top.

Referenced by luaO_pushvfstring().

Variable Documentation

◆ luaO_nilobject_

LUAI_DDEF const TValue luaO_nilobject_ = {NILCONSTANT}

Definition at line 33 of file lobject.cpp.