# lcode.h File Reference

`#include "llex.h"`
`#include "lobject.h"`
`#include "lopcodes.h"`
`#include "lparser.h"`

Go to the source code of this file.

## Defines
#define | NO_JUMP (-1)
#define | getcode(fs, e) ((fs)->f->code[(e)->u.s.info])
#define | luaK_codeAsBx(fs, o, A, sBx) luaK_codeABx(fs,o,A,(sBx)+MAXARG_sBx)
#define | luaK_setmultret(fs, e) luaK_setreturns(fs, e, LUA_MULTRET)
## Enumerations
enum | BinOpr { OPR_ADD, OPR_SUB, OPR_MUL, OPR_DIV, OPR_MOD, OPR_POW, OPR_CONCAT, OPR_NE, OPR_EQ, OPR_LT, OPR_LE, OPR_GT, OPR_GE, OPR_AND, OPR_OR, OPR_NOBINOPR }
enum | UnOpr { OPR_MINUS, OPR_NOT, OPR_LEN, OPR_NOUNOPR }
## Functions
LUAI_FUNC int | luaK_codeABx (FuncState *fs, OpCode o, int A, unsigned int Bx)
LUAI_FUNC int | luaK_codeABC (FuncState *fs, OpCode o, int A, int B, int C)
LUAI_FUNC void | luaK_fixline (FuncState *fs, int line)
LUAI_FUNC void | luaK_nil (FuncState *fs, int from, int n)
LUAI_FUNC void | luaK_reserveregs (FuncState *fs, int n)
LUAI_FUNC void | luaK_checkstack (FuncState *fs, int n)
LUAI_FUNC int | luaK_stringK (FuncState *fs, TString *s)
LUAI_FUNC int | luaK_numberK (FuncState *fs, lua_Number r)
LUAI_FUNC void | luaK_dischargevars (FuncState *fs, expdesc *e)
LUAI_FUNC int | luaK_exp2anyreg (FuncState *fs, expdesc *e)
LUAI_FUNC void | luaK_exp2nextreg (FuncState *fs, expdesc *e)
LUAI_FUNC void | luaK_exp2val (FuncState *fs, expdesc *e)
LUAI_FUNC int | luaK_exp2RK (FuncState *fs, expdesc *e)
LUAI_FUNC void | luaK_self (FuncState *fs, expdesc *e, expdesc *key)
LUAI_FUNC void | luaK_indexed (FuncState *fs, expdesc *t, expdesc *k)
LUAI_FUNC void | luaK_goiftrue (FuncState *fs, expdesc *e)
LUAI_FUNC void | luaK_storevar (FuncState *fs, expdesc *var, expdesc *e)
LUAI_FUNC void | luaK_setreturns (FuncState *fs, expdesc *e, int nresults)
LUAI_FUNC void | luaK_setoneret (FuncState *fs, expdesc *e)
LUAI_FUNC int | luaK_jump (FuncState *fs)
LUAI_FUNC void | luaK_ret (FuncState *fs, int first, int nret)
LUAI_FUNC void | luaK_patchlist (FuncState *fs, int list, int target)
LUAI_FUNC void | luaK_patchtohere (FuncState *fs, int list)
LUAI_FUNC void | luaK_concat (FuncState *fs, int *l1, int l2)
LUAI_FUNC int | luaK_getlabel (FuncState *fs)
LUAI_FUNC void | luaK_prefix (FuncState *fs, UnOpr op, expdesc *v)
LUAI_FUNC void | luaK_infix (FuncState *fs, BinOpr op, expdesc *v)
LUAI_FUNC void | luaK_posfix (FuncState *fs, BinOpr op, expdesc *v1, expdesc *v2)
LUAI_FUNC void | luaK_setlist (FuncState *fs, int base, int nelems, int tostore)

## Define Documentation

#define getcode | ( | fs,
|  | e |  | ) | ((fs)->f->code[(e)->u.s.info])

#define luaK_codeAsBx | ( | fs,
|  | o,
|  | A,
|  | sBx |  | ) | luaK_codeABx(fs,o,A,(sBx)+MAXARG_sBx)

#define luaK_setmultret | ( | fs,
|  | e |  | ) | luaK_setreturns(fs, e, LUA_MULTRET)

#define NO_JUMP (-1)

## Enumeration Type Documentation

enum BinOpr

Enumerator:

  OPR_ADD |
  OPR_SUB |
  OPR_MUL |
  OPR_DIV |
  OPR_MOD |
  OPR_POW |
  OPR_CONCAT |
  OPR_NE |
  OPR_EQ |
  OPR_LT |
  OPR_LE |
  OPR_GT |
  OPR_GE |
  OPR_AND |
  OPR_OR |
  OPR_NOBINOPR |

enum UnOpr

Enumerator:

  OPR_MINUS |
  OPR_NOT |
  OPR_LEN |
  OPR_NOUNOPR |

## Function Documentation

LUAI_FUNC void luaK_checkstack | ( | FuncState * | fs,
|  | int | n |
| ) |  |  |

LUAI_FUNC int luaK_codeABC | ( | FuncState * | fs,
|  | OpCode | o,
|  | int | A,
|  | int | B,
|  | int | C |
| ) |  |  |

LUAI_FUNC int luaK_codeABx | ( | FuncState * | fs,
|  | OpCode | o,
|  | int | A,
|  | unsigned int | Bx |
| ) |  |  |

LUAI_FUNC void luaK_concat | ( | FuncState * | fs,
|  | int * | l1,
|  | int | l2 |
| ) |  |  |

LUAI_FUNC void luaK_dischargevars | ( | FuncState * | fs,
|  | expdesc * | e |
| ) |  |  |

LUAI_FUNC int luaK_exp2anyreg | ( | FuncState * | fs,
|  | expdesc * | e |
| ) |  |  |

LUAI_FUNC void luaK_exp2nextreg | ( | FuncState * | fs,
|  | expdesc * | e |
| ) |  |  |

LUAI_FUNC int luaK_exp2RK | ( | FuncState * | fs,
|  | expdesc * | e |
| ) |  |  |

LUAI_FUNC void luaK_exp2val | ( | FuncState * | fs,
|  | expdesc * | e |
| ) |  |  |

LUAI_FUNC void luaK_fixline | ( | FuncState * | fs,
|  | int | line |
| ) |  |  |

LUAI_FUNC int luaK_getlabel | ( | FuncState * | fs | ) |

LUAI_FUNC void luaK_goiftrue | ( | FuncState * | fs,
|  | expdesc * | e |
| ) |  |  |

LUAI_FUNC void luaK_indexed | ( | FuncState * | fs,
|  | expdesc * | t,
|  | expdesc * | k |
| ) |  |  |

LUAI_FUNC void luaK_infix | ( | FuncState * | fs,
|  | BinOpr | op,
|  | expdesc * | v |
| ) |  |  |

LUAI_FUNC int luaK_jump | ( | FuncState * | fs | ) |

LUAI_FUNC void luaK_nil | ( | FuncState * | fs,
|  | int | from,
|  | int | n |
| ) |  |  |

LUAI_FUNC int luaK_numberK | ( | FuncState * | fs,
|  | lua_Number | r |
| ) |  |  |

LUAI_FUNC void luaK_patchlist | ( | FuncState * | fs,
|  | int | list,
|  | int | target |
| ) |  |  |

LUAI_FUNC void luaK_patchtohere | ( | FuncState * | fs,
|  | int | list |
| ) |  |  |

LUAI_FUNC void luaK_posfix | ( | FuncState * | fs,
|  | BinOpr | op,
|  | expdesc * | v1,
|  | expdesc * | v2 |
| ) |  |  |

LUAI_FUNC void luaK_prefix | ( | FuncState * | fs,
|  | UnOpr | op,
|  | expdesc * | v |
| ) |  |  |

LUAI_FUNC void luaK_reserveregs | ( | FuncState * | fs,
|  | int | n |
| ) |  |  |

LUAI_FUNC void luaK_ret | ( | FuncState * | fs,
|  | int | first,
|  | int | nret |
| ) |  |  |

LUAI_FUNC void luaK_self | ( | FuncState * | fs,
|  | expdesc * | e,
|  | expdesc * | key |
| ) |  |  |

LUAI_FUNC void luaK_setlist | ( | FuncState * | fs,
|  | int | base,
|  | int | nelems,
|  | int | tostore |
| ) |  |  |

LUAI_FUNC void luaK_setoneret | ( | FuncState * | fs,
|  | expdesc * | e |
| ) |  |  |

LUAI_FUNC void luaK_setreturns | ( | FuncState * | fs,
|  | expdesc * | e,
|  | int | nresults |
| ) |  |  |

LUAI_FUNC void luaK_storevar | ( | FuncState * | fs,
|  | expdesc * | var,
|  | expdesc * | e |
| ) |  |  |

LUAI_FUNC int luaK_stringK | ( | FuncState * | fs,
|  | TString * | s |
| ) |  |  |