auxlib split in two parts (lauxlib and lbuffer)

This commit is contained in:
Roberto Ierusalimschy 1997-12-23 17:24:36 -02:00
parent 1bf762ba38
commit d916487d7c
2 changed files with 5 additions and 76 deletions

View File

@ -1,5 +1,5 @@
/*
** $Id: lauxlib.c,v 1.5 1997/12/09 13:35:19 roberto Exp roberto $
** $Id: lauxlib.c,v 1.6 1997/12/17 20:48:58 roberto Exp roberto $
** Auxiliar functions for building Lua libraries
** See Copyright Notice in lua.h
*/
@ -7,11 +7,8 @@
#include <stdarg.h>
#include <stdio.h>
#include <string.h>
#include "lauxlib.h"
#include "lmem.h"
#include "lstate.h"
#include "lua.h"
#include "luadebug.h"
@ -100,71 +97,3 @@ void luaL_verror (char *fmt, ...)
lua_error(buff);
}
/*-------------------------------------------------------
** Auxiliar buffer
-------------------------------------------------------*/
#define BUFF_STEP 32
#define openspace(size) if (L->Mbuffnext+(size) > L->Mbuffsize) Openspace(size)
static void Openspace (int size)
{
LState *l = L; /* to optimize */
int base = l->Mbuffbase-l->Mbuffer;
l->Mbuffsize *= 2;
if (l->Mbuffnext+size > l->Mbuffsize) /* still not big enough? */
l->Mbuffsize = l->Mbuffnext+size;
l->Mbuffer = luaM_realloc(l->Mbuffer, l->Mbuffsize);
l->Mbuffbase = l->Mbuffer+base;
}
char *luaL_openspace (int size)
{
openspace(size);
return L->Mbuffer+L->Mbuffnext;
}
void luaL_addchar (int c)
{
openspace(BUFF_STEP);
L->Mbuffer[L->Mbuffnext++] = c;
}
void luaL_resetbuffer (void)
{
L->Mbuffnext = L->Mbuffbase-L->Mbuffer;
}
void luaL_addsize (int n)
{
L->Mbuffnext += n;
}
int luaL_newbuffer (int size)
{
int old = L->Mbuffbase-L->Mbuffer;
openspace(size);
L->Mbuffbase = L->Mbuffer+L->Mbuffnext;
return old;
}
void luaL_oldbuffer (int old)
{
L->Mbuffnext = L->Mbuffbase-L->Mbuffer;
L->Mbuffbase = L->Mbuffer+old;
}
char *luaL_buffer (void)
{
return L->Mbuffbase;
}

View File

@ -1,5 +1,5 @@
#
## $Id: makefile,v 1.6 1997/11/19 17:29:23 roberto Exp roberto $
## $Id: makefile,v 1.7 1997/12/17 20:48:58 roberto Exp roberto $
## Makefile
## See Copyright Notice in lua.h
#
@ -36,6 +36,7 @@ ARFLAGS = rvl
LUAOBJS = \
lapi.o \
lauxlib.o \
lbuffer.o \
lbuiltin.o \
ldo.o \
lfunc.o \
@ -91,11 +92,10 @@ clear :
%.c : RCS/%.c,v
co $@
lapi.o: lapi.c lapi.h lua.h lobject.h lauxlib.h ldo.h lstate.h lfunc.h \
lgc.h lmem.h lstring.h ltable.h ltm.h luadebug.h lvm.h
lauxlib.o: lauxlib.c lauxlib.h lua.h lmem.h lstate.h lobject.h \
luadebug.h
lauxlib.o: lauxlib.c lauxlib.h lua.h luadebug.h
lbuffer.o: lbuffer.c lauxlib.h lua.h lmem.h lstate.h lobject.h
lbuiltin.o: lbuiltin.c lapi.h lua.h lobject.h lauxlib.h lbuiltin.h \
ldo.h lstate.h lfunc.h lmem.h lstring.h ltable.h ltm.h
ldo.o: ldo.c ldo.h lobject.h lua.h lstate.h lfunc.h lgc.h lmem.h \