The Battle for Wesnoth  1.13.4+dev
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Classes | Macros | Functions
ldump.cpp File Reference
#include <stddef.h>
#include "lua.h"
#include "lobject.h"
#include "lstate.h"
#include "lundump.h"
Include dependency graph for ldump.cpp:

Go to the source code of this file.

Classes

struct  DumpState
 

Macros

#define ldump_c
 
#define LUA_CORE
 
#define DumpMem(b, n, size, D)   DumpBlock(b,(n)*(size),D)
 
#define DumpVar(x, D)   DumpMem(&x,1,sizeof(x),D)
 
#define DumpCode(f, D)   DumpVector(f->code,f->sizecode,sizeof(Instruction),D)
 

Functions

static void DumpBlock (const void *b, size_t size, DumpState *D)
 
static void DumpChar (int y, DumpState *D)
 
static void DumpInt (int x, DumpState *D)
 
static void DumpNumber (lua_Number x, DumpState *D)
 
static void DumpVector (const void *b, int n, size_t size, DumpState *D)
 
static void DumpString (const TString *s, DumpState *D)
 
static void DumpFunction (const Proto *f, DumpState *D)
 
static void DumpConstants (const Proto *f, DumpState *D)
 
static void DumpUpvalues (const Proto *f, DumpState *D)
 
static void DumpDebug (const Proto *f, DumpState *D)
 
static void DumpHeader (DumpState *D)
 
int luaU_dump (lua_State *L, const Proto *f, lua_Writer w, void *data, int strip)
 

Macro Definition Documentation

#define DumpCode (   f,
 
)    DumpVector(f->code,f->sizecode,sizeof(Instruction),D)

Definition at line 75 of file ldump.cpp.

Referenced by DumpFunction().

#define DumpMem (   b,
  n,
  size,
 
)    DumpBlock(b,(n)*(size),D)

Definition at line 25 of file ldump.cpp.

Referenced by DumpVector().

#define DumpVar (   x,
 
)    DumpMem(&x,1,sizeof(x),D)

Definition at line 26 of file ldump.cpp.

Referenced by DumpChar(), DumpInt(), DumpNumber(), and DumpString().

#define ldump_c

Definition at line 8 of file ldump.cpp.

#define LUA_CORE

Definition at line 9 of file ldump.cpp.

Function Documentation

static void DumpBlock ( const void b,
size_t  size,
DumpState D 
)
static

Definition at line 28 of file ldump.cpp.

References DumpState::data, DumpState::L, lua_lock, lua_unlock, DumpState::status, and DumpState::writer.

Referenced by DumpHeader(), and DumpString().

static void DumpChar ( int  y,
DumpState D 
)
static

Definition at line 38 of file ldump.cpp.

References DumpVar.

Referenced by DumpConstants(), DumpFunction(), and DumpUpvalues().

static void DumpConstants ( const Proto f,
DumpState D 
)
static
static void DumpDebug ( const Proto f,
DumpState D 
)
static
static void DumpFunction ( const Proto f,
DumpState D 
)
static
static void DumpHeader ( DumpState D)
static

Definition at line 151 of file ldump.cpp.

References DumpBlock(), LUAC_HEADERSIZE, and luaU_header().

Referenced by luaU_dump().

static void DumpInt ( int  x,
DumpState D 
)
static

Definition at line 44 of file ldump.cpp.

References DumpVar.

Referenced by DumpConstants(), DumpDebug(), DumpFunction(), DumpUpvalues(), and DumpVector().

static void DumpNumber ( lua_Number  x,
DumpState D 
)
static

Definition at line 49 of file ldump.cpp.

References DumpVar.

Referenced by DumpConstants().

static void DumpString ( const TString s,
DumpState D 
)
static

Definition at line 60 of file ldump.cpp.

References DumpBlock(), DumpVar, getstr, TString::len, and TString::tsv.

Referenced by DumpConstants(), and DumpDebug().

static void DumpUpvalues ( const Proto f,
DumpState D 
)
static

Definition at line 108 of file ldump.cpp.

References DumpChar(), DumpInt(), i, Upvaldesc::idx, Upvaldesc::instack, Proto::sizeupvalues, and Proto::upvalues.

Referenced by DumpFunction().

static void DumpVector ( const void b,
int  n,
size_t  size,
DumpState D 
)
static

Definition at line 54 of file ldump.cpp.

References DumpInt(), and DumpMem.

Referenced by DumpDebug().

int luaU_dump ( lua_State L,
const Proto f,
lua_Writer  w,
void data,
int  strip 
)