~ubuntu-branches/ubuntu/trusty/teeworlds/trusty-updates

« back to all changes in this revision

Viewing changes to bam/src/lua/src/lcode.h

  • Committer: Bazaar Package Importer
  • Author(s): Gonéri Le Bouder
  • Date: 2009-04-12 02:32:37 UTC
  • mfrom: (3.2.1 sid)
  • Revision ID: james.westby@ubuntu.com-20090412023237-ufmf1xn0rkjmx6f3
Tags: 0.5.1-2
* Fix the ouput of teeworlds-server --help with /bin/sh ->
  /bin/bash (Closes: #511600)
* Standard version 3.8.1

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/*
2
 
** $Id: lcode.h,v 1.38 2002/12/11 12:34:22 roberto Exp $
3
 
** Code generator for Lua
4
 
** See Copyright Notice in lua.h
5
 
*/
6
 
 
7
 
#ifndef lcode_h
8
 
#define lcode_h
9
 
 
10
 
#include "llex.h"
11
 
#include "lobject.h"
12
 
#include "lopcodes.h"
13
 
#include "lparser.h"
14
 
 
15
 
 
16
 
/*
17
 
** Marks the end of a patch list. It is an invalid value both as an absolute
18
 
** address, and as a list link (would link an element to itself).
19
 
*/
20
 
#define NO_JUMP (-1)
21
 
 
22
 
 
23
 
/*
24
 
** grep "ORDER OPR" if you change these enums
25
 
*/
26
 
typedef enum BinOpr {
27
 
  OPR_ADD, OPR_SUB, OPR_MULT, OPR_DIV, OPR_POW,
28
 
  OPR_CONCAT,
29
 
  OPR_NE, OPR_EQ,
30
 
  OPR_LT, OPR_LE, OPR_GT, OPR_GE,
31
 
  OPR_AND, OPR_OR,
32
 
  OPR_NOBINOPR
33
 
} BinOpr;
34
 
 
35
 
#define binopistest(op) ((op) >= OPR_NE)
36
 
 
37
 
typedef enum UnOpr { OPR_MINUS, OPR_NOT, OPR_NOUNOPR } UnOpr;
38
 
 
39
 
 
40
 
#define getcode(fs,e)   ((fs)->f->code[(e)->info])
41
 
 
42
 
#define luaK_codeAsBx(fs,o,A,sBx)       luaK_codeABx(fs,o,A,(sBx)+MAXARG_sBx)
43
 
 
44
 
int luaK_code (FuncState *fs, Instruction i, int line);
45
 
int luaK_codeABx (FuncState *fs, OpCode o, int A, unsigned int Bx);
46
 
int luaK_codeABC (FuncState *fs, OpCode o, int A, int B, int C);
47
 
void luaK_fixline (FuncState *fs, int line);
48
 
void luaK_nil (FuncState *fs, int from, int n);
49
 
void luaK_reserveregs (FuncState *fs, int n);
50
 
void luaK_checkstack (FuncState *fs, int n);
51
 
int luaK_stringK (FuncState *fs, TString *s);
52
 
int luaK_numberK (FuncState *fs, lua_Number r);
53
 
void luaK_dischargevars (FuncState *fs, expdesc *e);
54
 
int luaK_exp2anyreg (FuncState *fs, expdesc *e);
55
 
void luaK_exp2nextreg (FuncState *fs, expdesc *e);
56
 
void luaK_exp2val (FuncState *fs, expdesc *e);
57
 
int luaK_exp2RK (FuncState *fs, expdesc *e);
58
 
void luaK_self (FuncState *fs, expdesc *e, expdesc *key);
59
 
void luaK_indexed (FuncState *fs, expdesc *t, expdesc *k);
60
 
void luaK_goiftrue (FuncState *fs, expdesc *e);
61
 
void luaK_goiffalse (FuncState *fs, expdesc *e);
62
 
void luaK_storevar (FuncState *fs, expdesc *var, expdesc *e);
63
 
void luaK_setcallreturns (FuncState *fs, expdesc *var, int nresults);
64
 
int luaK_jump (FuncState *fs);
65
 
void luaK_patchlist (FuncState *fs, int list, int target);
66
 
void luaK_patchtohere (FuncState *fs, int list);
67
 
void luaK_concat (FuncState *fs, int *l1, int l2);
68
 
int luaK_getlabel (FuncState *fs);
69
 
void luaK_prefix (FuncState *fs, UnOpr op, expdesc *v);
70
 
void luaK_infix (FuncState *fs, BinOpr op, expdesc *v);
71
 
void luaK_posfix (FuncState *fs, BinOpr op, expdesc *v1, expdesc *v2);
72
 
 
73
 
 
74
 
#endif