CHDK_DE Vorschauversion  Trunk Rev. 6014
 Alle Datenstrukturen Dateien Funktionen Variablen Typdefinitionen Aufzählungen Aufzählungswerte Makrodefinitionen
lparser.h-Dateireferenz
#include "llimits.h"
#include "lobject.h"
#include "lzio.h"
+ Include-Abhängigkeitsdiagramm für lparser.h:
+ Dieser Graph zeigt, welche Datei direkt oder indirekt diese Datei enthält:

gehe zum Quellcode dieser Datei

Datenstrukturen

struct  expdesc
 
struct  upvaldesc
 
struct  FuncState
 

Typdefinitionen

typedef struct expdesc expdesc
 
typedef struct upvaldesc upvaldesc
 
typedef struct FuncState FuncState
 

Aufzählungen

enum  expkind {
  VVOID, VNIL, VTRUE, VFALSE,
  VK, VKNUM, VLOCAL, VUPVAL,
  VGLOBAL, VINDEXED, VJMP, VRELOCABLE,
  VNONRELOC, VCALL, VVARARG
}
 

Funktionen

LUAI_FUNC ProtoluaY_parser (lua_State *L, ZIO *z, Mbuffer *buff, const char *name)
 

Dokumentation der benutzerdefinierten Typen

typedef struct expdesc expdesc
typedef struct FuncState FuncState
typedef struct upvaldesc upvaldesc

Dokumentation der Aufzählungstypen

enum expkind
Aufzählungswerte
VVOID 
VNIL 
VTRUE 
VFALSE 
VK 
VKNUM 
VLOCAL 
VUPVAL 
VGLOBAL 
VINDEXED 
VJMP 
VRELOCABLE 
VNONRELOC 
VCALL 
VVARARG 

Definiert in Zeile 19 der Datei lparser.h.

19  {
20  VVOID, /* no value */
21  VNIL,
22  VTRUE,
23  VFALSE,
24  VK, /* info = index of constant in `k' */
25  VKNUM, /* nval = numerical value */
26  VLOCAL, /* info = local register */
27  VUPVAL, /* info = index of upvalue in `upvalues' */
28  VGLOBAL, /* info = index of table; aux = index of global name in `k' */
29  VINDEXED, /* info = table register; aux = index register (or `k') */
30  VJMP, /* info = instruction pc */
31  VRELOCABLE, /* info = instruction pc */
32  VNONRELOC, /* info = result register */
33  VCALL, /* info = instruction pc */
34  VVARARG /* info = instruction pc */
35 } expkind;

Dokumentation der Funktionen

LUAI_FUNC Proto* luaY_parser ( lua_State L,
ZIO z,
Mbuffer buff,
const char *  name 
)

Definiert in Zeile 383 der Datei lparser.c.

383  {
384  struct LexState lexstate;
385  struct FuncState funcstate;
386  lexstate.buff = buff;
387  luaX_setinput(L, &lexstate, z, luaS_new(L, name));
388  open_func(&lexstate, &funcstate);
389  funcstate.f->is_vararg = VARARG_ISVARARG; /* main func. is always vararg */
390  luaX_next(&lexstate); /* read first token */
391  chunk(&lexstate);
392  check(&lexstate, TK_EOS);
393  close_func(&lexstate);
394  lua_assert(funcstate.prev == NULL);
395  lua_assert(funcstate.f->nups == 0);
396  lua_assert(lexstate.fs == NULL);
397  return funcstate.f;
398 }